On Sun, Jun 23, 2002 at 09:44:03PM -0700, Brian Pane wrote: > On Sat, 2002-06-22 at 17:01, Ryan Bloom wrote: > > I believe that the problem is platform specific. The reason that loop > > was added, was to allow for graceless shutdown on linux. On non-linux > > platforms, killing the main thread kills the whole process, but on linux > > this doesn't work. The point of closing the sockets was to force the > > worker threads to finish ASAP so that the process could die. > > Why not just pthread_kill() all the workers if we're running > on Linux? That would be a much more direct way of stopping > them than closing the sockets.
That could lead to deadlock if one of our threads happens to be inside of a crossprocess mutex when it is killed. There are solutions to this problem, but they are not pretty. -aaron
