Mercurial > sdl-ios-xcode
diff docs/html/sdlsemwait.html @ 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/html/sdlsemwait.html Thu Apr 26 16:45:43 2001 +0000 @@ -0,0 +1,290 @@ +<HTML +><HEAD +><TITLE +>SDL_SemWait</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet Version 1.61 +"><LINK +REL="HOME" +TITLE="SDL Library Documentation" +HREF="index.html"><LINK +REL="UP" +TITLE="Multi-threaded Programming" +HREF="thread.html"><LINK +REL="PREVIOUS" +TITLE="SDL_DestroySemaphore" +HREF="sdldestroysemaphore.html"><LINK +REL="NEXT" +TITLE="SDL_SemTryWait" +HREF="sdlsemtrywait.html"></HEAD +><BODY +CLASS="REFENTRY" +BGCOLOR="#FFF8DC" +TEXT="#000000" +LINK="#0000ee" +VLINK="#551a8b" +ALINK="#ff0000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>SDL Library Documentation</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="sdldestroysemaphore.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="sdlsemtrywait.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><H1 +><A +NAME="SDLSEMWAIT" +>SDL_SemWait</A +></H1 +><DIV +CLASS="REFNAMEDIV" +><A +NAME="AEN7398" +></A +><H2 +>Name</H2 +>SDL_SemWait -- Lock a semaphore and suspend the thread if the semaphore value is zero.</DIV +><DIV +CLASS="REFSYNOPSISDIV" +><A +NAME="AEN7401" +></A +><H2 +>Synopsis</H2 +><DIV +CLASS="FUNCSYNOPSIS" +><A +NAME="AEN7402" +></A +><P +></P +><PRE +CLASS="FUNCSYNOPSISINFO" +>#include "SDL.h" +#include "SDL_thread.h"</PRE +><P +><CODE +><CODE +CLASS="FUNCDEF" +>int <B +CLASS="FSFUNC" +>SDL_SemWait</B +></CODE +>(SDL_sem *sem);</CODE +></P +><P +></P +></DIV +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN7408" +></A +><H2 +>Description</H2 +><P +><TT +CLASS="FUNCTION" +>SDL_SemWait()</TT +> suspends the calling thread until either +the semaphore pointed to by <TT +CLASS="PARAMETER" +><I +>sem</I +></TT +> has a positive value, +the call is interrupted by a signal or error. If the call is successful it +will atomically decrement the semaphore value.</P +><P +>After <TT +CLASS="FUNCTION" +>SDL_SemWait()</TT +> is successful, the semaphore +can be released and its count atomically incremented by a successful call to +<A +HREF="sdlsempost.html" +>SDL_SemPost</A +>.</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN7416" +></A +><H2 +>Return Value</H2 +><P +>Returns <SPAN +CLASS="RETURNVALUE" +>0</SPAN +> if successful or +<SPAN +CLASS="RETURNVALUE" +>-1</SPAN +> if there was an error (leaving the semaphore unchanged).</P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN7421" +></A +><H2 +>Examples</H2 +><P +><PRE +CLASS="PROGRAMLISTING" +>if (SDL_SemWait(my_sem) == -1) { + return WAIT_FAILED; +} + +... + +SDL_SemPost(my_sem);</PRE +></P +></DIV +><DIV +CLASS="REFSECT1" +><A +NAME="AEN7425" +></A +><H2 +>See Also</H2 +><P +><A +HREF="sdlcreatesemaphore.html" +><TT +CLASS="FUNCTION" +>SDL_CreateSemaphore</TT +></A +>, +<A +HREF="sdldestroysemaphore.html" +><TT +CLASS="FUNCTION" +>SDL_DestroySemaphore</TT +></A +>, +<A +HREF="sdlsemtrywait.html" +><TT +CLASS="FUNCTION" +>SDL_SemTryWait</TT +></A +>, +<A +HREF="sdlsemwaittimeout.html" +><TT +CLASS="FUNCTION" +>SDL_SemWaitTimeout</TT +></A +>, +<A +HREF="sdlsempost.html" +><TT +CLASS="FUNCTION" +>SDL_SemPost</TT +></A +>, +<A +HREF="sdlsemvalue.html" +><TT +CLASS="FUNCTION" +>SDL_SemValue</TT +></A +></P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="sdldestroysemaphore.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="index.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="sdlsemtrywait.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>SDL_DestroySemaphore</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="thread.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>SDL_SemTryWait</TD +></TR +></TABLE +></DIV +></BODY +></HTML +> \ No newline at end of file