OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / glibc-linuxthreads / release / man3 / pthread_once.3
index 34d5c5a..18467b7 100644 (file)
 .\"
 .TH PTHREAD_ONCE 3 LinuxThreads
 
-.SH Ì¾Á°
-pthread_once \- 1 ²ó¤­¤ê¤Î½é´ü²½
+.SH 名前
+pthread_once \- 1 回きりの初期化
 
-.SH ½ñ¼°
+.SH 書式
 .B #include <pthread.h>
 
 .BI "pthread_once_t " once_control " = PTHREAD_ONCE_INIT;"
 
 .BI "int pthread_once(pthread_once_t *" once_control ", void (*" init_routine ") (void));"
 
-.SH ÀâÌÀ
+.SH 説明
 
 .B "pthread_once"
-¤ÎÌÜŪ¤Ï¡¢
-½é´ü²½¥³¡¼¥É¤¬¹â¡¹ 1 ²ó¤·¤«¼Â¹Ô¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£
-°ú¿ô
+の目的は、
+初期化コードが高々 1 回しか実行されないようにすることである。
+引数
 .I "once_control"
-¤ÏÀÅŪÊÑ¿ô¤Þ¤¿¤Ï³°ÉôÊÑ¿ô¤ò»Ø¤·¼¨¤·¡¢ÀÅŪ¤Ë
+は静的変数または外部変数を指し示し、静的に
 .B "PTHREAD_ONCE_INIT"
-¤È¤¤¤¦Ãͤ˽é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+という値に初期化されていなければならない。
 
-ºÇ½é¤Ë°ú¿ô
+最初に引数
 .I "once_control"
-¤È¤È¤â¤Ë
+とともに
 .B "pthread_once"
-¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­¤Ë¤Ï¡¢
+が呼び出されたときには、
 .I "init_routine"
-¤ò°ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤·¡¢
-ÊÑ¿ô
+を引数なしで呼び出し、
+変数
 .I "once_control"
-¤ÎÃͤòÊѹ¹¤·¤Æ½é´ü²½¤¬¹Ô¤Ê¤ï¤ì¤¿¤³¤È¤òµ­Ï¿¤¹¤ë¡£
-¤½¤Î¸åƱ¤¸°ú¿ô
+の値を変更して初期化が行なわれたことを記録する。
+その後同じ引数
 .B "once_control"
-¤È¤È¤â¤Ë
+とともに
 .B "pthread_once"
-¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­¤Ï²¿¤â¤·¤Ê¤¤¡£
+が呼び出されたときは何もしない。
 
-.SH ÊÖ¤êÃÍ
+.SH 返り値
 .B "pthread_once"
-¤Ï¾ï¤Ë 0 ¤òÊÖ¤¹¡£
+は常に 0 を返す。
 
-.SH ¥¨¥é¡¼
-¤Ê¤·¡£
+.SH ã\82¨ã\83©ã\83¼
+なし。
 
-.SH Ãø¼Ô
+.SH 著者
 Xavier Leroy <Xavier.Leroy@inria.fr>
 
 
-[ÌõÃí] glibc-linuxthreads ¤ÎºÇ¿·¤Î¥É¥­¥å¥á¥ó¥È¤Ï Texinfo ·Á¼°¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë¡£
-°Ê²¼¤Ï glibc-linuxthreads-2.3.1 ¤Î Texinfo ¥Õ¥¡¥¤¥ë¤«¤é¤Î°úÍѤǡ¢
-¡ÖÀâÌÀ¡×¤Ø¤ÎÄɵ­¤Ë¤¢¤¿¤ë¤â¤Î¤Ç¤¢¤ë¡£
+[訳注] glibc-linuxthreads の最新のドキュメントは Texinfo 形式で提供されている。
+以下は glibc-linuxthreads-2.3.1 の Texinfo ファイルからの引用で、
+「説明」への追記にあたるものである。
 
-¥¹¥ì¥Ã¥É¤¬
+スレッドが
 .I "init_routine"
-¤ò¼Â¹ÔÃæ¤Ë¼è¤ê¾Ã¤·¤µ¤ì¤¿¾ì¹ç¡¢
+を実行中に取り消しされた場合、
 .I "once_control"
-¤Ï¥ê¥»¥Ã¥È¤µ¤ì¡¢¾­Íè
+はリセットされ、将来
 .B "pthread_once"
-¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­½é´ü²½¥ë¡¼¥Á¥ó¤ÏºÆ¤Ó¼Â¹Ô¤µ¤ì¤ë¡£
+が呼び出されたとき初期化ルーチンは再び実行される。
 
-1 ¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¹¥ì¥Ã¥É¤¬
+1 つまたは複数のスレッドが
 .B "pthread_once"
-¤Î½é´ü²½¥ë¡¼¥Á¥ó¤ò¼Â¹ÔÃæ¤Ë
-¥×¥í¥»¥¹¤¬ fork ¤·¤¿¤È¤­¤Ë¤Ï¡¢
-»Ò¥×¥í¥»¥¹¤Ç¤Ï¤½¤ì¤¾¤ì¤Î
+の初期化ルーチンを実行中に
+プロセスが fork したときには、
+子プロセスではそれぞれの
 .I "once_control"
-ÊÑ¿ô¤Ï¥ê¥»¥Ã¥È¤µ¤ì¤¿¤è¤¦¤Ë¸«¤¨¡¢
-»Ò¥×¥í¥»¥¹¤Ç
+変数はリセットされたように見え、
+子プロセスで
 .B "pthread_once"
-¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­½é´ü²½¥ë¡¼¥Á¥ó¤Ï¼Â¹Ô¤µ¤ì¤ë¡£
+が呼び出されたとき初期化ルーチンは実行される。