* cygthread.cc (cygthread::stub): Reintroduce clearing of __name but do it
before SetEvent to eliminate a race. (cygthread::terminate): Accumulate list of threads to check for termination and call WaitForMultipleObjects on list rather than waiting for each thread individually. * sigproc.cc (subproc_init): Zap hwait_subproc thread handle since it is no longer used. * spawn.cc (spawn_guts): Fix so that cygthread::terminate is *really* called only for exec.
This commit is contained in:
@@ -805,8 +805,9 @@ subproc_init (void)
|
||||
*/
|
||||
events[0] = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL);
|
||||
hwait_subproc = new cygthread (wait_subproc, NULL, "proc");
|
||||
hwait_subproc->zap_h ();
|
||||
ProtectHandle (events[0]);
|
||||
sigproc_printf ("started wait_subproc thread %p", (HANDLE) *hwait_subproc);
|
||||
sigproc_printf ("started wait_subproc thread");
|
||||
}
|
||||
|
||||
/* Initialize some of the memory block passed to child processes
|
||||
|
Reference in New Issue
Block a user