【发布时间】:2016-11-06 03:58:51
【问题描述】:
看abcastabcast man page时,
和castcast man page,我不明白这两者有什么区别。
有人可以向我澄清一下吗?
谢谢
【问题讨论】:
标签: erlang erlang-otp gen-server
看abcastabcast man page时,
和castcast man page,我不明白这两者有什么区别。
有人可以向我澄清一下吗?
谢谢
【问题讨论】:
标签: erlang erlang-otp gen-server
gen_server:cast/2 和gen_server:abcast/2,3 有三个区别:
gen_server:abcast/3 获取目标节点列表,指定在哪里可以找到以指定名称注册的gen_server 实例,而gen_server:abcast/2 发送到列表[node() | nodes()],而gen_server:cast/2 只能寻址单个gen_server 实例。 gen_server:abcast/2,3 只接受一个名称,作为一个原子,而gen_server:cast/2 可以接受一个原子、一个 pid,或者对于 global 和 via 选项,任何 Erlang 术语。
gen_server:abcast/2,3 返回abcast,而gen_server:cast/2 返回ok。第一个区别是最重要的,因为它允许跨一组节点对一组gen_server 实例进行异步广播(即abcast)。
【讨论】: