Home | History | Annotate | Download | only in pthread

Lines Matching defs:sem

40 	sem_t sem;
46 SDL_sem *sem = (SDL_sem *) SDL_malloc(sizeof(SDL_sem));
47 if ( sem ) {
48 if ( sem_init(&sem->sem, 0, initial_value) < 0 ) {
50 SDL_free(sem);
51 sem = NULL;
56 return sem;
59 void SDL_DestroySemaphore(SDL_sem *sem)
61 if ( sem ) {
62 sem_destroy(&sem->sem);
63 SDL_free(sem);
67 int SDL_SemTryWait(SDL_sem *sem)
71 if ( ! sem ) {
76 if ( sem_trywait(&sem->sem) == 0 ) {
82 int SDL_SemWait(SDL_sem *sem)
86 if ( ! sem ) {
91 while ( ((retval = sem_wait(&sem->sem)) == -1) && (errno == EINTR) ) {}
98 int SDL_SemWaitTimeout(SDL_sem *sem, Uint32 timeout)
108 if ( ! sem ) {
115 return SDL_SemTryWait(sem);
118 return SDL_SemWait(sem);
144 retval = sem_timedwait(&sem->sem, &ts_timeout);
151 while ((retval = SDL_SemTryWait(sem)) == SDL_MUTEX_TIMEDOUT) {
162 Uint32 SDL_SemValue(SDL_sem *sem)
165 if ( sem ) {
166 sem_getvalue(&sem->sem, &ret);
174 int SDL_SemPost(SDL_sem *sem)
178 if ( ! sem ) {
183 retval = sem_post(&sem->sem);