version 1.98, 2006/11/10 18:14:58
|
version 1.98.4.1, 2007/04/04 11:04:44
|
|
|
{ | { |
if (Thread::_key_error) | if (Thread::_key_error) |
{ | { |
Tracer::trace(TRC_THREAD, Tracer::LEVEL4, |
PEG_TRACE_CSTRING(TRC_THREAD, Tracer::LEVEL4, |
"Thread: ERROR - thread key error"); | "Thread: ERROR - thread key error"); |
return -1; | return -1; |
} | } |
| |
if (TSDKey::create(&Thread::_platform_thread_key) == 0) | if (TSDKey::create(&Thread::_platform_thread_key) == 0) |
{ | { |
Tracer::trace(TRC_THREAD, Tracer::LEVEL4, |
PEG_TRACE_CSTRING(TRC_THREAD, Tracer::LEVEL4, |
"Thread: able to create a thread key"); | "Thread: able to create a thread key"); |
Thread::_key_initialized = true; | Thread::_key_initialized = true; |
} | } |
else | else |
{ | { |
Tracer::trace(TRC_THREAD, Tracer::LEVEL4, |
PEG_TRACE_CSTRING(TRC_THREAD, Tracer::LEVEL4, |
"Thread: ERROR - unable to create a thread key"); | "Thread: ERROR - unable to create a thread key"); |
Thread::_key_error = true; | Thread::_key_error = true; |
return -1; | return -1; |
|
|
set_thread_specific(Thread::_platform_thread_key, | set_thread_specific(Thread::_platform_thread_key, |
(void *) thrd) == 0) | (void *) thrd) == 0) |
{ | { |
Tracer::trace(TRC_THREAD, Tracer::LEVEL4, |
PEG_TRACE_CSTRING(TRC_THREAD, Tracer::LEVEL4, |
"Successful set Thread * into thread specific storage"); | "Successful set Thread * into thread specific storage"); |
} | } |
else | else |
{ | { |
Tracer::trace(TRC_THREAD, Tracer::LEVEL4, |
PEG_TRACE_CSTRING(TRC_THREAD, Tracer::LEVEL4, |
"ERROR: error setting Thread * into thread specific storage"); | "ERROR: error setting Thread * into thread specific storage"); |
} | } |
} | } |