Mercurial > sdl-ios-xcode
diff docs/man3/SDL_SemTryWait.3 @ 0:74212992fb08
Initial revision
author | Sam Lantinga <slouken@lokigames.com> |
---|---|
date | Thu, 26 Apr 2001 16:45:43 +0000 |
parents | |
children | 55f1f1b3e27d |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/man3/SDL_SemTryWait.3 Thu Apr 26 16:45:43 2001 +0000 @@ -0,0 +1,41 @@ +.TH "SDL_SemTryWait" "3" "Mon 12 Mar 2001, 01:04" "SDL" "SDL API Reference" +.SH "NAME" +SDL_SemTryWait\- Attempt to lock a semaphore but don\&'t suspend the thread\&. +.SH "SYNOPSIS" +.PP +\fB#include "SDL\&.h" +#include "SDL_thread\&.h" +.sp +\fBint \fBSDL_SemTryWait\fP\fR(\fBSDL_sem *sem\fR); +.SH "DESCRIPTION" +.PP +\fBSDL_SemTryWait\fP is a non-blocking varient of \fI\fBSDL_SemWait\fP\fR\&. If the value of the semaphore pointed to by \fBsem\fR is positive it will atomically decrement the semaphore value and return 0, otherwise it will return \fBSDL_MUTEX_TIMEOUT\fR instead of suspending the thread\&. +.PP +After \fBSDL_SemTryWait\fP is successful, the semaphore can be released and its count atomically incremented by a successful call to \fISDL_SemPost\fR\&. +.SH "RETURN VALUE" +.PP +Returns \fB0\fR if the semaphore was successfully locked or either \fBSDL_MUTEX_TIMEOUT\fR or \fB-1\fR if the thread would have suspended or there was an error, respectivly\&. +.PP +If the semaphore was not successfully locked, the semaphore will be unchanged\&. +.SH "EXAMPLES" +.PP +.PP +.nf +\f(CWres = SDL_SemTryWait(my_sem); + +if (res == SDL_MUTEX_TIMEOUT) { + return TRY_AGAIN; +} +if (res == -1) { + return WAIT_ERROR; +} + +\&.\&.\&. + +SDL_SemPost(my_sem);\fR +.fi +.PP +.SH "SEE ALSO" +.PP +\fI\fBSDL_CreateSemaphore\fP\fR, \fI\fBSDL_DestroySemaphore\fP\fR, \fI\fBSDL_SemWait\fP\fR, \fI\fBSDL_SemWaitTimeout\fP\fR, \fI\fBSDL_SemPost\fP\fR, \fI\fBSDL_SemValue\fP\fR +...\" created by instant / docbook-to-man, Mon 12 Mar 2001, 01:04