On Wed, 30 Apr 2008, Abdul-rahman Advany wrote: > Your multithread class doesn't catch failures... > http://ruby-rails.pl/true-ruby-thread-pool Contrariwise. It does. Of course it's a bit debatable what you want to do with a failure once you have caught it. Having a exception bubble up the call frames to the top level of a generic pool worker thread is not very helpful. Having all the tasks complete before you act on a failure is not what I wanted either. The gotcha is two or more failures can happen before you start handling them in the parent thread. So what I do is catch failues, and drop them in a list which I check before every run / join. If there have been any failures I throw them all in a bundle up the parent thread. That may not be what you want, but it makes sense to me. John Carter Phone : (64)(3) 358 6639 Tait Electronics Fax : (64)(3) 359 4632 PO Box 1645 Christchurch Email : john.carter / tait.co.nz New Zealand