【问题标题】:How to control number of running worker processes?如何控制正在运行的工作进程的数量?
【发布时间】:2010-02-09 10:23:39
【问题描述】:

根据 gen_server 创建固定数量的工作进程并为它们提供“作业”以执行某些操作,erlang 中的设计模式是什么?每个工作进程都与具有连接限制的外部服务进行对话。被认为是无限的“工作”数量。在 C 中,我会通过创建一个工作线程池和一个异步来做到这一点。由互斥锁保护的队列(容量有限)为池提供来自提交者的作业。

【问题讨论】:

  • 为什么要固定数量的工人?
  • @rvirding,我希望固定工作人员的数量,因为他们每个人都与外部服务通信,该服务限制来自单一来源的同时连接数量

标签: erlang


【解决方案1】:

让 gen_server 在您的工作进程上放置一个监视器,当一个进程死亡(工作完成或崩溃)时,会产生另一个。

【讨论】:

  • 您可能会为此使用主管。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-11
  • 2018-02-08
  • 1970-01-01
  • 1970-01-01
  • 2013-11-01
相关资源
最近更新 更多