OSDN Git Service

SDL_Vulkan_UnloadLibrary 新規追加 https://wiki.libsdl.org/SDL_Vulkan_UnloadLibrary
[sdl2referencejp/sdl2referencejp.git] / SDL_CondWait.html
index 51b328a..07ec26a 100644 (file)
 <h2>\96ß\82è\92l</h2>\r
 \90¬\8c÷\82Ì\82Æ\82«0, \8e¸\94s\82Ì\82Æ\82«\95\89\82Ì\90\94\82Ì\83G\83\89\81[\83R\81[\83h\82ð\96ß\82·.\r
 <a href="SDL_GetError.html">SDL_GetError()</a>\82Å\8fÚ\8d×\82ð\92m\82é\82±\82Æ\82ª\82Å\82«\82é.\r
+<h2>\83T\83\93\83v\83\8b\83R\81[\83h</h2>\r
+<p>\r
+\8fð\8c\8f\95Ï\90\94\82Ì\93T\8c^\93I\82È\8eg\82¢\95û:\r
+<code>\r
+<pre>\r
+SDL_bool condition = SDL_FALSE;\r
+SDL_mutex *lock;\r
+SDL_cond *cond;\r
+\r
+lock = SDL_CreateMutex();\r
+cond = SDL_CreateCond();\r
+.\r
+.\r
+Thread A:\r
+    SDL_LockMutex(lock);\r
+    while (!condition) {\r
+        SDL_CondWait(cond, lock);\r
+    }\r
+    SDL_UnlockMutex(lock);\r
+\r
+Thread B:\r
+    SDL_LockMutex(lock);\r
+    ...\r
+    condition = SDL_TRUE;\r
+    ...\r
+    SDL_CondSignal(cond);\r
+    SDL_UnlockMutex(lock);\r
+.\r
+.\r
+SDL_DestroyCond(cond);\r
+SDL_DestroyMutex(lock);\r
+</pre>\r
+</code>\r
+</p>\r
 <h2>\8fÚ\8d×</h2>\r
 <p>\r
 \82±\82Ì\8aÖ\90\94\82Ímutex\82Ì\83\8d\83b\83N\82ð\89ð\8f\9c\82µ, \95Ê\82Ì\83X\83\8c\83b\83h\82ª<a href="SDL_CondSignal.html">SDL_CondSignal()</a>\82©<a href="SDL_CondBroadcast.html">SDL_CondBroadcast()</a>\82ð\8cÄ\82ñ\82Å\8fð\8c\8f\95Ï\90\94cond\82ð\92Ê\92m\82·\82é\82Ü\82Å\91Ò\82Â.\r
@@ -35,10 +69,10 @@ mutex
 \82±\82Ì\8aÖ\90\94\82Í, <a href="SDL_CondWaitTimeout.html">SDL_CondWaitTimeout()</a>\82Ì\91Ò\82¿\8e\9e\8aÔ\82ðSDL_MUTEX_MAXWAIT\82Æ\82µ\82½\82Ì\82Æ\93¯\82\82Å\82 \82é.\r
 </p>\r
 <h2>\8aÖ\98A\8d\80\96Ú(\8aÖ\90\94)</h2>\r
-<a href="SDL_CreateCond.html">SDL_CreateCond</a><br>\r
 <a href="SDL_CondBroadcast.html">SDL_CondBroadcast</a><br>\r
 <a href="SDL_CondSignal.html">SDL_CondSignal</a><br>\r
 <a href="SDL_CondWaitTimeout.html">SDL_CondWaitTimeout</a><br>\r
+<a href="SDL_CreateCond.html">SDL_CreateCond</a><br>\r
 <a href="SDL_DestroyCond.html">SDL_DestroyCond</a><br>\r
 <h2>SDL Wiki\82Ö\82Ì\83\8a\83\93\83N</h2>\r
 <a href="https://wiki.libsdl.org/SDL_CondWait">SDL_CondWait - SDL Wiki</a>\r