假设我在Elixir中生成多个子进程。
defmodule Child do
def start(name) do
receive do
msg -> IO.puts "Message received by #{name}: #{inspect msg}"
end
end
end
defmodule Parent do
def main do
child1 = spawn_link (fn -> Child.start("1") end)
child2 = spawn_link (fn -> Child.start("2") end)
child3 = spawn_link (fn -> Child.start("3") end)
end
end
我是否有任何方法可以向当前进程(或其他进程)的所有子进程发送消息?
send_to_children self(), "hello to all children"
我是指,有没有一种方式可以告诉运行时向当前进程链接的所有进程广播消息?当然,我可以将所有生成的pid存储在某种数据结构中并循环遍历以执行此操作,但如果有一种规范的方法来执行此操作,似乎效率更高且错误更少。