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: cygthread::cygthread() hang


On Fri, Apr 04, 2003 at 01:02:30AM -0500, Christopher Faylor wrote:
>On Thu, Apr 03, 2003 at 10:23:27AM -0500, Joe Buehler wrote:
>>Christopher Faylor wrote:
>>
>>>h is only set once when the thread is first started up.  cygthread
>>>threads are persistent to avoid thread creation/exit.
>>>
>>>If this is truly a case of h being NULL in the above, then add code to
>>>catch that in the ifdef DEBUGGING case.
>>
>>I added some code in cygthread::new() to make sure that h is set when
>>new() exits.  I have still run into the problem -- h is 0 when
>>cygthread::cygthread() tests it.  So it is being clobbered after
>>new() initializes it.
>
>There was a race in new.  Don't know if this is what you were seeing
>or not.  It should be fixed now.

Argh.  There's still a race there.  I have to think about this some more.

cgf


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