我是 Erlang 新手,对接收块有疑问。我正在尝试从正在执行任务的子进程接收一条或多条消息。我发现如何接收消息的方法是使用接收块。
例如
main() ->
spawn(module, performSomething, []),
receiveSomething().
receiveSomething() ->
receive
Var -> handleIt
end,
receiveSomething().
问题1:假设孩子可能会向需要处理消息的父母发送多条消息,“轮询”这个接收块是好的做法吗?例如,这应该如何管理?
问题 2:感觉像是某种忙碌的等待,是吗?例如,它会导致性能问题吗?
问题 3:在 Objective-C 中,我会使用委托来接收回调并避免轮询。Erlang有替代品吗?