如何将孩子添加到Erlang主管



我正在尝试将事件经理添加到主管,但是我有这样的错误:

1> test_event_call:start_link().
{ok,<0.85.0>}
2> test_event_call:start_event().
{error,{ok,{child,undefined,test_event_proc,
                  {test_event,start,[]},
                  transient,200000,worker,
                  [test_event]}}}

主管模块是test_event_call.erl:

-module(test_event_call).
-behaviour(supervisor).
-export([start_link/0, start_event/0, init/1]).
start_link() ->
    supervisor:start_link({local, ?MODULE}, 
                          ?MODULE, []).
start_event() ->
    supervisor:start_child(?MODULE, {test_event_proc,
                                     {test_event, start, []},
                                     transient, 200000, worker, [test_event]}).
init(_Args) ->
    {ok, {{one_for_one, 1, 5}, []}}.

孩子是test_event.erl:

-module(test_event).
-behaviour(gen_event).
-export([init/1, handle_event/2, handle_call/2, handle_info/2, terminate/2, code_change/3]).

-export([start/0, log_fun/2]).
start() ->
    {ok, _Pid} = gen_event:start_link({local, ?MODULE}),
    gen_event:add_handler(?MODULE, ?MODULE, []).

任何人可以帮助我解决这个错误吗?

返回{ok,pid}解决我的问题。

最新更新