erlang并行输出的问题
- -module(echo).
- -export([start/0, loop/0,while/2]).
- start() ->
- spawn(echo, loop, []).
- loop() ->
- receive
- {From, Message} ->
- From ! Message,
- while(Message,10),
- loop()
- end.
- while(M,0)-> {over,M};
- while(M,Count)->
- io:format("this outputs for: ~w~n", [M]),
- while(M,Count-1).
复制代码
并发运行:
Id = echo:start(),Id2 = echo:start().
Id ! {self(), hello},Id2 ! {self(), hello}.
结果没有输出 {over,M}; 这是为什么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
应该是我搞错了 while(M,0)-> {over,M}; 我以为这个是输出。
没看到你输出 {over,M} 呀。