namespace cds {
- CDS_EXPORT_API CDS_ATOMIC::atomic<size_t> threading::ThreadData::s_nLastUsedProcNo(0);
+ CDS_EXPORT_API atomics::atomic<size_t> threading::ThreadData::s_nLastUsedProcNo(0);
CDS_EXPORT_API size_t threading::ThreadData::s_nProcCount = 1;
#if CDS_OS_INTERFACE == CDS_OSI_WINDOWS
CDS_EXPORT_API DWORD cds::threading::wintls::Manager::Holder::m_key = TLS_OUT_OF_INDEXES;
__declspec( thread ) threading::msvc_internal::ThreadDataPlaceholder threading::msvc_internal::s_threadData;
- __declspec( thread ) threading::ThreadData * threading::msvc_internal::s_pThreadData = NULL;
+ __declspec(thread) threading::ThreadData * threading::msvc_internal::s_pThreadData = nullptr;
#else
pthread_key_t threading::pthread::Manager::Holder::m_key;
# if CDS_COMPILER == CDS_COMPILER_GCC || CDS_COMPILER == CDS_COMPILER_CLANG
__thread threading::gcc_internal::ThreadDataPlaceholder CDS_DATA_ALIGNMENT(8) threading::gcc_internal::s_threadData;
- __thread threading::ThreadData * threading::gcc_internal::s_pThreadData = NULL;
+ __thread threading::ThreadData * threading::gcc_internal::s_pThreadData = nullptr;
# endif
#endif
#ifdef CDS_CXX11_THREAD_LOCAL_SUPPORT
thread_local threading::cxx11_internal::ThreadDataPlaceholder CDS_DATA_ALIGNMENT(8) threading::cxx11_internal::s_threadData;
- thread_local threading::ThreadData * threading::cxx11_internal::s_pThreadData = NULL;
+ thread_local threading::ThreadData * threading::cxx11_internal::s_pThreadData = nullptr;
#endif
namespace details {
- static CDS_ATOMIC::atomic<size_t> s_nInitCallCount(0);
+ static atomics::atomic<size_t> s_nInitCallCount(0);
bool CDS_EXPORT_API init_first_call()
{
- return s_nInitCallCount.fetch_add(1, CDS_ATOMIC::memory_order_relaxed) == 0;
+ return s_nInitCallCount.fetch_add(1, atomics::memory_order_relaxed) == 0;
}
bool CDS_EXPORT_API fini_last_call()
{
- if ( s_nInitCallCount.fetch_sub( 1, CDS_ATOMIC::memory_order_relaxed ) == 1 ) {
- CDS_ATOMIC::atomic_thread_fence( CDS_ATOMIC::memory_order_release );
+ if ( s_nInitCallCount.fetch_sub( 1, atomics::memory_order_relaxed ) == 1 ) {
+ atomics::atomic_thread_fence( atomics::memory_order_release );
return true;
}
return false;