目次 - API(機能別) - スレッド - SDL_TLSCreate

SDL_TLSCreate

TLS(スレッド局所記憶)を生成する

構文

SDL_TLSID SDL_TLSCreate(void)

戻り値

新しく生成されたスレッド局所記憶IDを戻す. 失敗のとき0を戻す.

サンプルコード

static SDL_SpinLock tls_lock;
static SDL_TLSID thread_local_storage;

void SetMyThreadData(void *value)
{
    if (!thread_local_storage) {
        SDL_AtomicLock(&tls_lock);
        if (!thread_local_storage) {
            thread_local_storage = SDL_TLSCreate();
        }
        SDL_AtomicUnlock(&tls_lock);
    }
    SDL_TLSSet(thread_local_storage, value, 0);
}

void *GetMyThreadData(void)
{
    return SDL_TLSGet(thread_local_storage);
}

詳細

この関数は, 全てのスレッドから見えるが特定のスレッドからのみ参照できる識別子を生成する.

バージョン

SDL 2.0.0以降

関連項目(関数)

SDL_TLSGet
SDL_TLSSet

SDL Wikiへのリンク

SDL_TLSCreate - SDL Wiki