erlang 注册进程以及进程间通信
Erlang 使用 spawn 来生成一个进程,使用register来注册一个进程到原子变量中。
注册完后,可以直接向原子发送消息。如:loop ! hello
-module(process).-export([register/0,loop/1]).register() -> Pid = spawn(?MODULE, loop, [start]),io:format("spawn...........~p~n", [Pid]),register(loop, Pid),receive after 2000 ->io:format("main process sleep one second~n")end,loop ! hello,io:format("main process end~n").loop(State) -> io:format("loop process started~n"),receive Message ->io:format("loop process received message: ~p~n", [Message])after 500 ->io:format("loop process sleep 500 microsecond,state ~p~n", [State]),loop(State)end,io:format("loop process end~n").