免责声明:erlang新手.
最初吸引我到erlang的一件事是演员模型; 不同进程同时运行并通过异步消息进行交互的想法.
我刚刚开始考虑OTP,特别是看gen_server.我见过的所有示例 - 并且授予它们是教程类型示例 - 使用handle_call()而不是handle_cast()实现模块行为.
我觉得有点混乱.据我所知,handle_call是一个同步操作:调用者被阻塞,直到被调用者完成并返回.这似乎与异步消息传递哲学背道而驰.
我即将开始一个新的OTP应用程序.这似乎是一个基本的架构决策,所以我想在开始之前确定我理解.
具体来说,我的问题是:
谢谢.
erlang ×1