blob: bd43f686e8c58ee9bb1411c3ce4755654815debf (
plain) (
tree)
|
|
-module(simple_server).
%% Local process. No timer. No monitor.
-export([start/1, reply/2, stop/1]).
start(State) ->
spawn(fun() -> loop(State) end).
stop(P) ->
P ! {stop, self()},
receive
ok ->
ok
end.
loop(S) ->
receive
{reply, P, M} ->
P ! M,
loop(S);
{stop, P} ->
P ! ok
end.
reply(P, M) ->
P ! {reply, self(), M},
receive
M ->
M
end.
|