SCHED_GETCPU(3)

名前
sched_getcpu - 呼び出したスレッドが実行されている CPU を知る

書式
#include <sched.h>
int sched_getcpu(void);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

sched_getcpu():
    glibc 2.14 以降:
        _GNU_SOURCE
    glibc 2.14 より前:
        _BSD_SOURCE || _SVID_SOURCE
            /* _GNU_SOURCE も定義される */

説明
sched_getcpu() は、呼び出したスレッドが現在実行されている CPU の番号を返す。

返り値
成功すると、 sched_getcpu() は非負の CPU 番号を返す。 エラーの場合、-1 を返し、 errno にエラーを示す値を設定する。

エラー

ENOSYS
    このカーネルでは getcpu(2) が実装されていない。

バージョン
この関数は glibc 2.6 以降で利用可能である。

属性

  マルチスレッディング (pthreads(7) 参照)
sched_getcpu() 関数はスレッドセーフである。

準拠
sched_getcpu() は glibc 固有である。

注意
呼び出し
cpu = sched_getcpu();
は、以下の getcpu(2) 呼び出しと等価である。
int c, s;
s = getcpu(&c, NULL, NULL);
cpu = (s == -1) ? s : c;

関連項目
getcpu(2), sched(7)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。