Ruby:用于线程池的任何宝石?

时间:2010-04-12 19:40:46

标签: ruby multithreading rubygems threadpool

是否有人可以推荐的线程池?

2 个答案:

答案 0 :(得分:4)

根据我的经验分叉/进程池比Ruby中的更有效(假设你在线程通信方面不需要太多)。前段时间我创建了一个名为process_pool的gem,它是一个非常基本的进程池,带有基于文件的作业队列(你可以在这里查看:http://github.com/psyho/process_pool)。

答案 1 :(得分:2)

我会尝试https://github.com/ruby-concurrency/concurrent-ruby/

它基本上是ruby的java.util.concurrent抽象(包括线程池)的一个端口 - 除非你在Jruby下安装它,它将使用 java .util.concurrent东西。所以你可以在任何ruby平台下编写能够在语义上做同样事情的代码(不一定是相同的性能)。

它还提供Futures,一种更高级别的抽象,可能比线程池更方便使用。