怎么样了接收 在 erlang 运行时内部实现的消息?
当进程正在等待消息时,执行卡在接收上。
接收是通过阻塞 IO 还是异步 IO 完成的?
如果是前者,则说明OS线程被阻塞,如果有很多进程在接收时挂起,由于线程上下文切换而导致性能不佳,也可能达到操作系统的线程限制。
最佳答案
Erlang 进程不对应于操作系统线程或进程。它们被实现为 Erlang VM 的内部结构,并由 Erlang VM 调度。 Erlang VM默认启动的OS线程数等于CPU数。当 Erlang 进程正在等待消息时,没有任何 OS 进程或线程被阻塞。
关于Erlang 接收消息——内部是怎么做的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16726896/