【发布时间】:2015-05-10 20:42:48
【问题描述】:
-define(INTERVAL, 1000).
init([]) ->
Timer = erlang:send_after(?INTERVAL, self(), tick),
{ok, Timer}.
handle_info(tick, OldTimer) ->
erlang:cancel_timer(OldTimer),
io:format("Tick ~w~n", [OldTimer]),
Timer = erlang:send_after(?INTERVAL, self(), tick).
{noreplay, Timer}.
start_clock() ->
{_, Timer} = init([]),
spawn(clock, handle_info, [tick, Timer]).
我的代码如上,但输出不是我想要的。 如何将 init() 和 handle_info() 集成到主函数(start_clock) 中?
【问题讨论】:
-
什么/是/你的输出?你期待什么样的输出?
-
就是所有的代码吗?在我的回答中,我假设这些是 gen_server 中的回调。
标签: timer erlang periodic-task periodic-processing