This is the mail archive of the cygwin-developers@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Recent change to init.cc for thread detach looks wrong?



On Fri, 20 Sep 2002, Robert Collins wrote:

> On Fri, 2002-09-20 at 17:42, Thomas Pfaff wrote:
> >
> >
> > On Fri, 20 Sep 2002, Robert Collins wrote:
> >
> > > On Fri, 2002-09-20 at 15:32, Christopher Faylor wrote:
> > > > Robert,
> > > > Your recent change:
> > > > 2002-09-11  Robert Collins  <rbtcollins@hotmail.com>
> > > >
> > > >         * init.cc (dll_entry): On thread detach, if the thread hasn't
> > > >         exit()ed, do so.
> > > >
> > > > doesn't look right.  The code invokes pthread::exit which can block
> > > > waiting on a mutex, it seems.
> > >
> > > Ok, will correct this weekend.
> > >
> >
> > You may have a look at my pthread patch part 4 that shows how i
> > have implemented cleanup after thread termination.
>
> Ok, so this effectively calls pthread::~pthread, which closes the win32
> objects, but does not set exit values etc.

Right. But you may have a look in my pthread_self code where i mark a
thread that was created outside pthreads scope as detached, so no other
thread can ever wait on it.

This stuff is only necessary for threads that are created by CreateThread
or started by the service control manager and i do not expect that other
threads will ever want to join them.

Thomas


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]