Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all bug

名前

       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/ に書かれている。