Scala如何比Java更容易编写多线程程序?Scala可以做些什么(Java无法做到的)来促进利用多个处理器?
Scala如何比Java更容易编写多线程程序?Scala可以做些什么(Java无法做到的)来促进利用多个处理器?
并发编程的规则如下:
1 如果可能,尽量避免使用并发。
2 如果可能,不要共享任何东西。
3 如果可能,共享不可变对象。
4 要非常小心(还有一点运气)。
对于规则2,Scala 提供了一个集成良好的消息传递库——actors,可以很方便地使用。
对于规则3,Scala 默认使所有内容都是不可变的。
对于规则4,Scala 的灵活语法允许创建内部 DSL,使得表达所需更加简洁,减少了意外情况的发生(如果使用得当)。
Scala没有Java所没有的特性,这是不明智的说法。Scala运行在与Java相同的JVM上。
Scala实现了一个多线程程序更易于编写、推理和调试的环境。
Scala在并发编程中的优势在于其专注于不可变对象,消息传递和Actors。
这使得你可以拥有线程安全的只读数据,轻松地将该数据传递给其他线程,并且方便地使用线程池。