From: Philip Oakley Date: Fri, 28 Oct 2016 13:01:45 GMT Subject: Re: [PATCH] compat: Allow static initializer for pthreads on Windows Message-ID: In-Reply-To: <2ddca5e3-3c4d-b555-4309-a180ceed581e@kdbg.org> From: "Johannes Sixt" > > One point is that the DCLP idiom must be implemented correctly. There are > solutions, of course, and when the initialization is over, we have a > miniscule overhead at each pthread_mutex_lock call. > I had to look up DCLP ( = Double Checked Locking Patterns), and found a good write up on the issues.. http://www.aristeia.com/Papers/DDJ_Jul_Aug_2004_revised.pdf "C++ and the Perils of Double-Checked Locking", which include 'C' issues, and multi-thread, multi-processor issues. Not an easy issue when fighting optimisers.. -- Philip