void ThreadIdentifierData::initialize(ThreadIdentifier id)
{
    ASSERT(!identifier());

    initializeKeyOnce();
    pthread_setspecific(m_key, new ThreadIdentifierData(id));
}
ThreadIdentifier ThreadIdentifierData::identifier()
{
    initializeKeyOnce();
    ThreadIdentifierData* threadIdentifierData = static_cast<ThreadIdentifierData*>(pthread_getspecific(m_key));

    return threadIdentifierData ? threadIdentifierData->m_identifier : 0;
}
void ThreadIdentifierData::initialize(ThreadIdentifier id)
{
    ASSERT(!identifier());

#if !ENABLE(SAMSUNG_WEBKIT_PERFORMANCE_PATCH)
    // SAMSUNG CHANGE : Webkit Performance Patch Merge + r92154
    initializeKeyOnce();
    // SAMSUNG CHANGE : Webkit Performance Patch Merge -
#endif
    pthread_setspecific(m_key, new ThreadIdentifierData(id));
}
ThreadIdentifier ThreadIdentifierData::identifier()
{
#if ENABLE(SAMSUNG_WEBKIT_PERFORMANCE_PATCH)
    // SAMSUNG CHANGE : Webkit Performance Patch Merge + r92154
    ASSERT(m_key != PTHREAD_KEYS_MAX);
#else
    initializeKeyOnce();
    // SAMSUNG CHANGE : Webkit Performance Patch Merge -
#endif
    ThreadIdentifierData* threadIdentifierData = static_cast<ThreadIdentifierData*>(pthread_getspecific(m_key));

    return threadIdentifierData ? threadIdentifierData->m_identifier : 0;
}