Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all
名前
pthread_yield - プロセッサを明け渡す (yield)
書式
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <pthread.h> int pthread_yield(void); -pthread を付けてコンパイルとリンクを行う。
説明
pthread_yield() を呼び出すと、呼び出したスレッドは CPU を手放す。 スレッドはそのスレッドの 静的優先度の実行キューの末尾に回り、 別のスレッドが実行されるようにスケジューリングされ る。 詳細は sched_yield(2) を参照。
返り値
成功すると、 pthread_yield() は 0 を返す。 エラーの場合、エラー番号を返す。
エラー
Linux では、この関数の呼び出しは常に成功する (ただし、移植性や将来も動作することを保証した いアプリケーションでは 正のエラーの返り値を処理するようにすべきである)。
属性
この節で使用されている用語の説明については、 attributes(7) を参照。 ┌─────────────────┬───────────────┬─────────┐ │インターフェース │ 属性 │ 値 │ ├─────────────────┼───────────────┼─────────┤ │pthread_yield() │ Thread safety │ MT-Safe │ └─────────────────┴───────────────┴─────────┘
準拠
この関数は非標準だが、他のいくつかのシステムにも存在する。 代わりに、標準化されている sched_yield(2) を使うこと。
注意
Linux では、この関数は sched_yield(2) を呼び出す形で実装されている。 pthread_yield() is intended for use with real-time scheduling policies (i.e., SCHED_FIFO or SCHED_RR). Use of pthread_yield() with nondeterministic scheduling policies such as SCHED_OTHER is unspecified and very likely means your application design is broken.
関連項目
sched_yield(2), pthreads(7), sched(7)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの 説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。