Edward Diener said: > "Alexander Terekhov" <[EMAIL PROTECTED]> wrote in message > news:[EMAIL PROTECTED] >> >> Ken Hagan wrote: >> > >> > Alexander Terekhov wrote: >> > > >> > > I, for one, believe strongly that "&k" is nothing but >> > > >> > > "static_cast<typeof(k)*>(pthread_getspecific(__k_key));" >> > > >> > > It *isn't* a compile-time constant (just like &errno isn't a >> compile time constant). >> > >> > MSVC has no pthread_getspecific(), so I venture to suggest that your >> belief probably isn't valid for that compiler. >> >> Uhmm. In return, I venture to suggest that MS-TLS can and shall be >> characterized as ``utterly busted.'' >> >> "If a DLL declares any nonlocal data or object as __declspec(thread), >> it can cause a protection fault if dynamically loaded." > > This is well-known by many and has never been hidden by MS. It doesn't > mean __declspec(thread) is busted, it just means that it is limited to > only those cases in which the DLL is not dynamically loaded, which is > the vast majority of cases. Of course to make TLS completely foolproof, > one does not use __declspec(thread) but instead one uses the Win32 TLS > API functions instead.
Where you run into issues with TLS cleanup ;). I won't be as critical as Alexander, but I will agree that the MS TLS implementation has serious design issues which need to be corrected. -- William E. Kempf _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost