8.9 发送
Expr1 ! Expr2
将 的值
Expr2
作为消息发送到 指定的进程Expr1
。的值Expr2
也是表达式的返回值。
Expr1
必须评估为pid、注册名称(原子)或tuple{Name,Node}
。Name
是一个原子,Node
是一个节点名,也是一个原子。
- 如果
Expr1
计算结果为一个名称,但该名称未注册,badarg
则会发生运行时错误。- 向 pid 发送消息永远不会失败,即使 pid 标识了一个不存在的进程。
- 分布式消息发送,也就是说,如果
Expr1
评估为一个元组{Name,Node}
(或位于另一个节点的 pid),也永远不会失败。
在分布式消息发送的情况下,我不清楚{Name,Node}
远程节点或进程的代码中的第一个原子代表什么。
感谢您的帮助。