DOKK / manpages / debian 12 / libsdl1.2-dev / SDL_CreateSemaphore.3.en
SDL_CreateSemaphore(3) SDL API Reference SDL_CreateSemaphore(3)

SDL_CreateSemaphore - Creates a new semaphore and assigns an initial value to it.

#include "SDL.h" #include "SDL_thread.h"

SDL_sem *SDL_CreateSemaphore(Uint32 initial_value);

SDL_CreateSemaphore() creates a new semaphore and initializes it with the value initial_value. Each locking operation on the semaphore by SDL_SemWait, SDL_SemTryWait or SDL_SemWaitTimeout will atomically decrement the semaphore value. The locking operation will be blocked if the semaphore value is not positive (greater than zero). Each unlock operation by SDL_SemPost will atomically increment the semaphore value.

Returns a pointer to an initialized semaphore or NULL if there was an error.

SDL_sem *my_sem;
my_sem = SDL_CreateSemaphore(INITIAL_SEM_VALUE);
if (my_sem == NULL) {

return CREATE_SEM_FAILED; }

SDL_DestroySemaphore, SDL_SemWait, SDL_SemTryWait, SDL_SemWaitTimeout, SDL_SemPost, SDL_SemValue

Tue 11 Sep 2001, 23:00 SDL