David Corbin
2/14/2005 10:12:00 PM
On Monday 14 February 2005 03:30 pm, William Morgan wrote:
> Excerpts from David Corbin's mail of 14 Feb 2005 (EST):
> > I have an applciation that spawns multiple threads. Each thread will
> > do a few things, including running a number of external applications
> > using back-ticks.
> >
> > Observation tells me that when I do this on Windows, it seems like
> > only three threads run simultaneously. Once one of those threads
> > finishes, the next one starts up.
>
> I'd be surprised if Ruby allowed more than one thread to do a system()
> call at a time,
Well, I could understand that (thought it would be bad). But I'm sure that
the three threads are running three process in parallel. And what's more,
none of the other threads will start until all the one of the first three
finishes. So, it's not just a limit of 3 external processes (btw, looking at
the source code, it looks like a limit of 255 external processes).
> Windows or not. Perhaps that would explain the behavior?
> If you fake those shell calls, do the symptoms persist?
>
> Ruby is definitely not limited to three concurrent threads at a time. :)