JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... ild )(void)); 説明 pthread_atfork は fork (2) によって新しいプロセスが生成される際、その直前と直後に呼び出される ハンドラ関数を登録する。 prepare ハンドラは ... たは複数に NULL を与えることができるが、これは対応する時点でいかなるハンドラをも 呼び出す必要がないことを意味する。 pthread_atfork は複数のハンドラの組合せを登録するために複数回 呼び出すことが可能である。 fork (2) の時点で複数の prepare ハンドラは LIFO ... 順で呼び出される( pthread_atfork で最後に加えられたものが fork の前に最初に呼び出される)。 他方、 parent と child は FIFO 順で呼び出される (最初に加えられた ... ... これにはミューテックス (mutex) の状態・条件変数・ pthread オブジェクトが含まれる。 これが引き起こす問題を扱うには、 pthread_atfork (3) を使うと良いだろう。 * After a fork () in a multithreaded program, the child can safely call only async-signal-safe fu ... ork () の呼び出しは、 flags に SIGCHLD だけを指定して clone (2) を呼び出すのと等価である)。 glibc のラッパー関数は pthread_atfork (3) を使って設定されている 任意の fork ハンドラーを起動する。 例 pipe (2) および wait (2) を参照。 関連項目 clone (2), exe ... cve (2), exit (2), setrlimit (2), unshare (2), vfork (2), wait (2), daemon (3), pthread_atfork (3), capabilities (7), credentials (7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一 ... ... T || WTERMSIG(ret) == SIGQUIT)) break; } According to POSIX.1, it is unspecified whether handlers registered using pthread_atfork (3) are called during the execution of system (). In the glibc implementation, such handlers are not called. glibc 2.1.3 よ ... ... parent process uses mmap (2) to map in code that will be executed by the privileged child process. Linux での注意 pthread_atfork (3) を使って設定された fork ハンドラーは NPTL スレッドライブラリコールを採用したマルチスレッドプログラムでは 呼び出されない ... ... duler (). THR - _POSIX_THREADS - _SC_THREADS POSIX スレッドの基本サポートが使用可能である。 以下の関数が存在する。 pthread_atfork (), pthread_attr_destroy (), pthread_attr_getdetachstate (), pthread_attr_getschedparam (), pthread_attr_init (), pthread_ ... ... , proc (5), attributes (7), futex (7), nptl (7), sigevent (7), signal (7) pthreads の各種マニュアルページ、例えば: pthread_atfork (3), pthread_attr_init (3), pthread_cancel (3), pthread_cleanup_push (3), pthread_cond_signal (3), pthread_cond_wait (3), ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。