如何将非事件驱动的流程纳入监管树?

时间:2013-06-11 04:54:14

标签: erlang otp elixir

我希望能够生成大量处理数据并将其纳入监督树的流程。但是,所有默认行为,即gen_server,gen_fsm和gen_event都是事件驱动的。他们必须接收消息来做事。我需要的只是处理数据的进程,如果它们异常终止,它们应该由其主管重新启动。这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

是的,标准行为全部用作服务器,因为他们在做某事之前等待请求。但是,OTP是 open ,因为它提供了实现流程所需的工具,这些流程不是行为,而是适合监督树并做“正确的事”。有关需要完成的操作以及如何操作的说明,请参阅Erlang文档中的Special processes部分。

这并不奇怪,因为所有OTP行为都是在Erlang中实现的,所以库中都有所有“工具”。