我无法理解如何使用Erlang进程接收多条消息。这是我在shell中尝试的内容:
1> GetMessage = spawn(fun() -> getMessage() end).
<0.252.0>
2> GetMessage ! msg.
Got a message
msg
3> GetMessage ! msg
msg
getMessage/0
的代码:
getMessage() ->
receive
_ ->
io:format("Got a message~n", [])
end.
如何继续接收讯息?
答案 0 :(得分:2)
啊,明白了:
getMessage() ->
receive
_ ->
io:format("Got a message~n", [])
getMessage() % Add this line!
end.
您需要在收到消息后再次调用该函数。