■
gen_serverのビヘイビアの定義(といっていいのかわからないが)はこんな感じになっている。
gen_server.erl
behaviour_info(callbacks) -> [{init,1},{handle_call,3},{handle_cast,2},{handle_info,2}, {terminate,2},{code_change,3}]; behaviour_info(_Other) -> undefined.
Javaでいうインターフェースのように、関数の名前とアリティが決められている。
gen_server.erlがgen_serverビヘイビアの実装で、
xxx.erl
-module(xxx). -behaviour(gen_server).
のようなファイルのほうは、gen_serverビヘイビアに対するコールバックの実装、ということでよいのだろうか。
ビヘイビアということばの定義と概念が不明。。。