====== (This is the documentation for SDL3, which is under heavy development and the API is changing! [https://wiki.libsdl.org/SDL2/ SDL2] is the current stable version!) ====== = SDL_CreateCond = Create a condition variable. == Syntax == SDL_cond* SDL_CreateCond(void); == Return Value == Returns a new condition variable or NULL on failure; call [[SDL_GetError]]() for more information. == Version == This function is available since SDL 3.0.0. == Code Examples == Typical use of condition variables: SDL_bool condition = SDL_FALSE; SDL_mutex *lock; SDL_cond *cond; lock = SDL_CreateMutex(); cond = SDL_CreateCond(); . . Thread A: SDL_LockMutex(lock); while (!condition) { SDL_CondWait(cond, lock); } SDL_UnlockMutex(lock); Thread B: SDL_LockMutex(lock); ... condition = SDL_TRUE; ... SDL_CondSignal(cond); SDL_UnlockMutex(lock); . . SDL_DestroyCond(cond); SDL_DestroyMutex(lock); == Related Functions == :[[SDL_CondBroadcast]] :[[SDL_CondSignal]] :[[SDL_CondWait]] :[[SDL_CondWaitTimeout]] :[[SDL_DestroyCond]] ---- [[CategoryAPI]], [[CategoryMutex]]