diff -r ffa851df0825 -r 2fb8b9db1c86 symbian-qemu-0.9.1-12/libsdl-trunk/docs/html/sdlsemwaittimeout.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/symbian-qemu-0.9.1-12/libsdl-trunk/docs/html/sdlsemwaittimeout.html Fri Jul 31 15:01:17 2009 +0100 @@ -0,0 +1,322 @@ +
SDL_SemWaitTimeout() is a varient of +SDL_SemWait +with a maximum timeout value. +If the value of the semaphore pointed to by sem is +positive (greater than zero) it will atomically decrement the semaphore value +and return 0, otherwise it will wait up to timeout +milliseconds trying to lock the semaphore. This function is to be avoided if +possible since on some platforms it is implemented by polling the semaphore +every millisecond in a busy loop.
After SDL_SemWaitTimeout() is successful, the semaphore +can be released and its count atomically incremented by a successful call to +SDL_SemPost.
Returns 0 if the semaphore was successfully locked or +either SDL_MUTEX_TIMEDOUT or -1 +if the timeout period was exceeded or there was an error, respectivly.
If the semaphore was not successfully locked, the semaphore will be unchanged.
res = SDL_SemWaitTimeout(my_sem, WAIT_TIMEOUT_MILLISEC); + +if (res == SDL_MUTEX_TIMEDOUT) { + return TRY_AGAIN; +} +if (res == -1) { + return WAIT_ERROR; +} + +... + +SDL_SemPost(my_sem);
SDL_CreateSemaphore, +SDL_DestroySemaphore, +SDL_SemWait, +SDL_SemTryWait, +SDL_SemPost, +SDL_SemValue