내가 gen_server가 중지 : 얼랑 gen_server
start(UserName) ->
case gen_server:start({global, UserName}, player, [], []) of
{ok, _} ->
io:format("Player: " ++ UserName ++ " started");
{error, Error} ->
Error
end
...
지금 내가이 세대 서버를 중지하는 함수를 작성합니다. 내가 가진 :
stop(UserName) ->
gen_server:cast(UserName, stop).
handle_cast(stop, State) ->
{stop, normal, State};
handle_cast(_Msg, State) ->
{noreply, State}.
나는 그것을 실행
start("shk").
Player: shk startedok
stop(shk).
ok
start("shk").
{already_started,<0.268.0>}
그러나 : 작업
stop(player).
ok
입니다.
gen_server를 이름으로 실행하고 이름으로 중지하려면 어떻게합니까?
감사합니다.
gen_server에는이 중지/1을 수행하는 특수 기능이 있습니다. 중지/3 http://erlang.org/doc/man/gen_server.html#stop-1 –