事件通知
- 3> gen_event:notify(error_man, no_reply).
- ***Error*** no_reply
- ok
error_man 是事件管理器的名字, no_reply 是事件。
事件被作为一个消息发送给事件管理器。当收到了这个事件以后,事件管理器为每个安装了的事件处理器按照他们添加的顺序调用 handle_event(Event,State) 。函数要返回一个元组 {ok,State1} ,其中 State1 是事件处理器的状态的新值。
在 terminal_logger 中:
- handle_event(ErrorMsg, State) ->
- io:format("***Error*** ~p~n", [ErrorMsg]),
- {ok, State}.
- handle_event(ErrorMsg, Fd) ->
- io:format(Fd, "***Error*** ~p~n", [ErrorMsg]),
- {ok, Fd}.
当前内容版权归 ShiningRay 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 ShiningRay .