📄 sdlsempost.html
字号:
<HTML><HEAD><TITLE>SDL_SemPost</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="SDL Library Documentation"HREF="index.html"><LINKREL="UP"TITLE="Multi-threaded Programming"HREF="thread.html"><LINKREL="PREVIOUS"TITLE="SDL_SemWaitTimeout"HREF="sdlsemwaittimeout.html"><LINKREL="NEXT"TITLE="SDL_SemValue"HREF="sdlsemvalue.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFF8DC"TEXT="#000000"LINK="#0000ee"VLINK="#551a8b"ALINK="#ff0000"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">SDL Library Documentation</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="sdlsemwaittimeout.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom"></TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="sdlsemvalue.html"ACCESSKEY="N">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><H1><ANAME="SDLSEMPOST"></A>SDL_SemPost</H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN8170"></A><H2>Name</H2>SDL_SemPost -- Unlock a semaphore.</DIV><DIVCLASS="REFSYNOPSISDIV"><ANAME="AEN8173"></A><H2>Synopsis</H2><DIVCLASS="FUNCSYNOPSIS"><ANAME="AEN8174"></A><P></P><PRECLASS="FUNCSYNOPSISINFO">#include "SDL.h"#include "SDL_thread.h"</PRE><P><CODE><CODECLASS="FUNCDEF">int <BCLASS="FSFUNC">SDL_SemPost</B></CODE>(SDL_sem *sem);</CODE></P><P></P></DIV></DIV><DIVCLASS="REFSECT1"><ANAME="AEN8180"></A><H2>Description</H2><P><TTCLASS="FUNCTION">SDL_SemPost</TT> unlocks the semaphore pointed to by<TTCLASS="PARAMETER"><I>sem</I></TT> and atomically increments the semaphores value.Threads that were blocking on the semaphore may be scheduled after this callsucceeds.</P><P><TTCLASS="FUNCTION">SDL_SemPost</TT> should be called after a semaphore is locked by a successful call to<AHREF="sdlsemwait.html">SDL_SemWait</A>,<AHREF="sdlsemtrywait.html">SDL_SemTryWait</A> or<AHREF="sdlsemwaittimeout.html">SDL_SemWaitTimeout</A>.</P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN8190"></A><H2>Return Value</H2><P>Returns <SPANCLASS="RETURNVALUE">0</SPAN> if successful or<SPANCLASS="RETURNVALUE">-1</SPAN> if there was an error (leaving the semaphore unchanged).</P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN8195"></A><H2>Examples</H2><P><PRECLASS="PROGRAMLISTING">SDL_SemPost(my_sem);</PRE></P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN8199"></A><H2>See Also</H2><P><AHREF="sdlcreatesemaphore.html"><TTCLASS="FUNCTION">SDL_CreateSemaphore</TT></A>,<AHREF="sdldestroysemaphore.html"><TTCLASS="FUNCTION">SDL_DestroySemaphore</TT></A>,<AHREF="sdlsemwait.html"><TTCLASS="FUNCTION">SDL_SemWait</TT></A>,<AHREF="sdlsemtrywait.html"><TTCLASS="FUNCTION">SDL_SemTryWait</TT></A>,<AHREF="sdlsemwaittimeout.html"><TTCLASS="FUNCTION">SDL_SemWaitTimeout</TT></A>,<AHREF="sdlsemvalue.html"><TTCLASS="FUNCTION">SDL_SemValue</TT></A></P></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="sdlsemwaittimeout.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="index.html"ACCESSKEY="H">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="sdlsemvalue.html"ACCESSKEY="N">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">SDL_SemWaitTimeout</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="thread.html"ACCESSKEY="U">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">SDL_SemValue</TD></TR></TABLE></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -