Erlang:为什么-behaviour(主管)给我“未定义的回调函数”错误?

时间:2013-06-04 18:34:51

标签: erlang behavior otp supervisor

当我尝试编译一个像这样开始的OTP管理程序模块时:

-module(gridz_sup).

-behaviour(supervisor).

-export([start_link/0, start_child/2]).

-define(SERVER, ?MODULE).

yada, yada...

我收到以下错误:

gridz_sup.erl:9:警告:未定义的回调函数init / 1(行为'主管')。

有些善良的灵魂可以指出我的方式错误吗?

非常感谢,

LRP

1 个答案:

答案 0 :(得分:8)

实现行为回调模块时,必须定义和导出许多强制回调函数。如果没有,你会看到警告。对于supervisor行为,只有一个强制回调函数init,它接受一个参数。