On Mar 10 10:55, Schmidt, Oliver wrote: > Hi Corrina, > > Thanks for your involvement :-) > > >> [...] a spinlock [...] With > >> InterlockedCompareExchange() and Sleep() it should be quite simple to > >> create one that's very efficient in the usual scenario. > > > Does the below patch fix this for you? > > I'll test the snapshot asap! > > [...] > + LONG init = InterlockedCompareExchange (&installation_root_init, 1L, > 0L); > [...] > + low_priority_sleep (0); > [...] > > I see we were thinking along the same lines ;-)
The final patch is from cgf. It's probably more performant since it drops the requirement for an additional spinlock. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple