Scala对Java进行并发编程有什么优势?

scala如何使编写multithreading程序比在java中更容易? scala能做些什么(java不能)来利用多个处理器?

并发规则是

1如果可以,请避免使用它

如果可以,2分享任何东西

3如果可以,共享不可变对象

4要非常小心(和幸运)

对于规则2,Scala通过以actor的forms提供开箱即用的良好集成的消息传递库来提供帮助。

对于规则3,Scala有助于在默认情况下使所有内容不可变。

对于规则4,Scala灵活的语法允许创建内部DSL,使其更容易,更少冗长,无法表达您需要的东西。 即减少意外的地方(如果做得好)

如果将Akka作为并发(和分布式)计算的基础,人们可能会认为唯一的区别是将Scala与Java区分开来的常用内容,因为Akka对其所有工具都有Java和Scala绑定。

Java 没有 Scala做的事情。 那太傻了。 Scala运行在与Java相同的JVM上。

Scala所做的是使编写更容易,更容易推理并更容易调试multithreading程序。

Scala用于并发的好处是它关注不可变对象,消息传递和它的Actors。

这为您提供了线程安全的只读数据,将数据传递给其他线程的简便方法,以及易于使用的线程池。