小编Ric*_*ard的帖子

如何使用akka连接到Unix套接字?

虽然在akka中使用TCP或UDP连接到java.net.InetSocketAddress相对容易,但API中的SocketAddress和Unix-socket似乎没有等价物.

对于我目前的项目,我需要使用Unix-Socket 连接到Docker Remote-API.有没有办法使用akka这样做或我需要使用不同的方法?

scala unix-socket akka

7
推荐指数
1
解决办法
577
查看次数

如何在subtrait中初始化trait的vals?

我尝试val在特征中使用抽象来初始化另一个值.我有一个NullPointerException.我把这个行为简化为一个最小的测试用例:

trait MessagePrinter {
  val message: String
  println(message)
}

class HelloPrinter extends MessagePrinter {
  val message = "Hello World"
}

val obj = new HelloPrinter()
println(obj.message)
Run Code Online (Sandbox Code Playgroud)

这个小程序产生以下结果:

null
Hello World
Run Code Online (Sandbox Code Playgroud)

我的印象是val可能永远不会改变.这是预期的行为还是编译器错误?如何解决此问题并Hello World在初始化期间进行打印?

scala traits

5
推荐指数
1
解决办法
2724
查看次数

c ++中+ =运算符的线程安全性

+=c ++中的运算符是否是线程安全的?

可以想象它不是的情况(伪代码):

int a = 5;

void thread1 () {
   a += 5;
}

void thread2 () {
   a += 5;
}

void main () {
    start_thread1 ();
    start_thread2 ();
    //Prints 15 always, but i think 10 is not impossible.
    printf ("%d\n", a);
}
Run Code Online (Sandbox Code Playgroud)

很明显,当+ =重载时我必须使用互斥锁,但是在使用简单类型时我是否必须设置互斥锁?

c++ multithreading thread-safety

0
推荐指数
2
解决办法
377
查看次数

标签 统计

scala ×2

akka ×1

c++ ×1

multithreading ×1

thread-safety ×1

traits ×1

unix-socket ×1