Wiki Page Content

SDL_CondBroadcast

Use this function to restart all threads that are waiting on the condition variable.

Syntax

int SDL_CondBroadcast(SDL_cond* cond)

Function Parameters

cond

the condition variable to signal

Return Value

Returns 0 on success or a negative error code on failure; call SDL_GetError() for more information.

Code Examples

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);
    while (!condition) {
        SDL_CondWait(cond, lock);
    }
    SDL_UnlockMutex(lock);

Thread C:
    SDL_LockMutex(lock);
    ...
    condition = SDL_TRUE;
    ...
    SDL_CondBroadcast(cond);
    SDL_UnlockMutex(lock);
.
.
SDL_DestroyCond(cond);
SDL_DestroyMutex(lock);

Remarks

You can add useful comments here


CategoryAPI, CategoryMutex

None: SDL_CondBroadcast (last edited 2015-04-26 19:03:53 by PhilippWiesemann)

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