This is the mail archive of the
pthreads-win32@sources.redhat.com
mailing list for the pthreas-win32 project.
Re: starvation in pthread_once?
- From: Alexander Terekhov <TEREKHOV at de dot ibm dot com>
- To: Ross Johnson <rpj at callisto dot canberra dot edu dot au>
- Cc: Pthreads-Win32 list <pthreads-win32 at sources dot redhat dot com>
- Date: Tue, 8 Mar 2005 10:58:23 +0100
- Subject: Re: starvation in pthread_once?
Grrr. Bad day.
if (!once_control) {
named_mutex::guard guard(&once_control2);
if (!once_control2) {
<init>
once_control2 = true;
}
once_control = true;
}
regards,
alexander.
Alexander Terekhov/Germany/IBM@IBMDE@sources.redhat.com on 03/08/2005
10:55:53 AM
Sent by: pthreads-win32-owner@sources.redhat.com
To: Ross Johnson <rpj@callisto.canberra.edu.au>
cc: Pthreads-Win32 list <pthreads-win32@sources.redhat.com>
Subject: Re: starvation in pthread_once?
> DCSI-TLS: (__declspec(thread) for control variable; DLL issues
> aside for a moment)
>
> if (!once_control) {
> named_mutex::guard guard(&once_control);
> if (!once_control) {
> <init>
> once_control = true;
> }
> }
Sorry, I meant:
if (!once_control) {
named_mutex::guard guard(&once_control);
if (!once_control2) {
<init>
once_control2 = true;
}
once_control = true;
}
where once_control2 is a non-TLS flag.
regards,
alexander.