如果我想移植一个使用Goroutines的Go库,那么Scala会是一个不错的选择,因为它的inbox/akka框架在本质上与协同程序类似吗?
由于并发编程变得越来越重要,我想知道你在这方面对Erlang与Scala的看法.在我看来,Scala拥有更大的用户群,并且可能比Erlang更加光明.此外,Scala是一种java.
我知道这些问题总是有点主观,但未来的投资会更好:Erlang或Scala.甚至是另一种语言?
我正在阅读SašaJurić的"Elixir in Action"一书,在第一章中它说:
Erlang进程完全相互隔离.它们不共享内存,一个进程崩溃不会导致其他进程崩溃.
Java线程也不是这样吗?我的意思是当Java线程崩溃时,它也不会崩溃其他线程 - 特别是,如果我们正在查看请求处理线程(让我们main从这个讨论中排除线程)
Elixir进程有自己的堆. 如果进程想要与另一个进程共享数据结构,那怎么可能呢?我想到的一个答案是,该进程向包含数据结构的其他进程发送消息.这是否意味着整个数据结构从一个堆复制到另一个堆?如果这是真的,那不是效率低下吗?