DRAFT

SDL_CreateSemaphore

Use this function to create a semaphore, initialized with a value returns NULL on failure *create a new semaphore and assign an initial value to it*.

Syntax

SDL_sem* SDL_CreateSemaphore(Uint32 initial_value)

Function Parameters

initial_value

the starting value for the semaphore

Return Value

Returns the semaphore or NULL if there was an error; call SDL_GetError() for more information.

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

Code Examples

*

SDL_sem *my_sem;

my_sem = SDL_CreateSemaphore(INITIAL_SEM_VALUE);

if (my_sem == NULL) {
        return CREATE_SEM_FAILED;
}

*
Should this example be merged with the one on the SDL_DestroySemaphore page and then used as an Include there instead?

Remarks

*
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.
*


CategoryAPI, CategoryMutex

SDL_CreateSemaphore (last edited 2010-10-18 02:20:09 by SheenaSmith)

Feedback
Please include your contact information if you'd like to receive a reply.
Submit