我正在尝试实现与自定义 gen_servers 通信的 REST 处理程序。
从主管获取 gen_server 并链接到当前处理程序进程:
rest_init(Req, _Opts) ->
...
process_flag(trap_exit, true),
{ok, Pid} = pbshare_logic_sup:start_registration(),
link(Pid),
...
make_get(Req, State) ->
....
make error here !!!
....
和 gen_server 代码:start_link() -> gen_server:start_link(?MODULE, [], [])。
init(Args) ->
process_flag(trap_exit, true),
{ok, []}.
handle_info({'EXIT', FromPid, Reason}, State) ->
lager:info("Exit Logic from ~p Reason: ~p~n", [FromPid, Reason]),
{noreply, State};
因此,当牛仔发生错误时,我希望从 REST 处理程序向我的 gen_server 接收 EXIT 信号。但我没有收到。难道我做错了什么?