Manpages

名 前

gettid − ス レ ッ ド ID を 取 得 す る

書 式

#include <sys/types.h>

pid_t gettid(void); : こ の シ ス テ ム コ ー ル に は glibc の ラ ッ パ ー 関 数 は 存 在 し な い 。 「 注 意 」 の 節 を 参 照 。

説 明

gettid() は 呼 び 出 し 元 の ス レ ッ ド ID (TID) を 返 す 。 シ ン グ ル ス レ ッ ド の プ ロ セ ス で は 、 ス レ ッ ド ID は (getpid(2) が 返 す プ ロ セ ス ID (PID) と 等 し い 。 マ ル チ ス レ ッ ド の プ ロ セ ス で は 、 全 て の ス レ ッ ド は 同 じ PID を 持 つ が 、 そ れ ぞ れ の ス レ ッ ド は 一 意 な TID を 持 つ 。 さ ら な る 詳 細 は 、 clone(2)CLONE_THREAD に つ い て の 議 論 を 参 照 す る こ と 。

返 り 値

成 功 の 場 合 、 呼 び 出 し 元 の プ ロ セ ス の ス レ ッ ド ID を 返 す 。

エ ラ ー

こ の コ ー ル は 常 に 成 功 す る 。

バ ー ジ ョ ン

gettid() シ ス テ ム コ ー ル は 、 カ ー ネ ル 2.4.11 の Linux で 初 め て 登 場 し た 。

準 拠

gettid() は Linux 固 有 で あ り 、 移 植 を 想 定 し た プ ロ グ ラ ム で は 使 用 す べ き で は な い 。

注 意

glibc は こ の シ ス テ ム コ ー ル に 対 す る ラ ッ パ ー 関 数 を 提 供 し て い な い 。 こ の シ ス テ ム コ ー ル は 呼 び 出 す に は syscall(2) を 使 う こ と 。 こ の シ ス テ ム コ ー ル が 返 す ス レ ッ ド ID は POSIX ス レ ッ ド ID (pthread_self(3) が 返 す 曖 昧 な 値 ) と 同 じ も の で は な い 。

関 連 項 目

capget(2), clone(2), fcntl(2), fork(2), get_robust_list(2), getpid(2), ioprio_set(2), perf_event_open(2), sched_setaffinity(2), sched_setparam(2), sched_setscheduler(2), tgkill(2), timer_create(2)

こ の 文 書 に つ い て

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