-module(test).
-export( [
d/1,
d/2,
main/0
]).
d(C)->d(C,50000000).
d(C,N) when N>0 ->
if
((N rem 10000000) ==0) ->
io:format("~1c \n", C);
true ->
ok
end,
d(C,N-1);
d(C,0)->ok.
main()->
spawn(?MODULE,d,["a"]),
spawn(?MODULE,d,["b"]),
spawn(?MODULE,d,["c"]),
spawn(?MODULE,d,["d"]),
spawn(?MODULE,d,["e"]),
spawn(?MODULE,d,["f"]),
spawn(?MODULE,d,["g"]),
spawn(?MODULE,d,["h"]).
执行上面的erlang代码你将会看到控制台乱序输出a~h ,并且如果你的电脑逻辑处理器数量小于8个,cpu将会处于全负荷状态,用erlang创建并发非常简单,远比c++简单,不用考虑多个线程同时抢占控制台等