查看源代码 Erlang 中的通信

Erlang 中的通信在概念上是使用异步信号执行的。所有不同的执行实体,例如进程和端口,都通过异步信号进行通信。最常用的信号是消息。其他常见的信号有 exit、link、unlink、monitor 和 demonitor 信号。

信号的传递

此信息已移动到 Erlang 参考手册进程 章节的 信号 部分

同步通信

此信息已移动到 Erlang 参考手册进程 章节的 信号 部分

实现

虚拟机中不同异步信号的实现可能会随着时间而变化,但其行为始终遵循上述实体之间传递异步信号的概念。

通过检查实现,您可能会注意到某些特定信号给出的保证比上述描述的更严格。至关重要的是,Erlang 代码要使用这种关于实现的知识,因为实现可以随时更改,恕不另行通知。

主要实现更改的示例

  • 从 ERTS 5.5.2 开始,发送给进程的 exit 信号是真正异步传递的。
  • 从 ERTS 5.10 开始,从进程到端口的所有信号都是真正异步传递的。