Manpages

名 前

pthread_attr_setschedparam, pthread_attr_getschedparam − ス レ ッ ド 属 性 オ ブ ジ ェ ク ト の ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー 属 性 の 設 定 /取 得 を 行 う

書 式

#include <pthread.h>

int pthread_attr_setschedparam(pthread_attr_t *attr,
const struct sched_param *
param);
int pthread_attr_getschedparam(const pthread_attr_t *
attr,
struct sched_param *
param);

−pthread で コ ン パ イ ル し て リ ン ク す る 。

説 明

pthread_attr_setschedparam() 関 数 は 、 attr が 参 照 す る ス レ ッ ド 属 性 オ ブ ジ ェ ク ト の ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー 属 性 を param が 指 す バ ッ フ ァ ー で 指 定 さ れ た 値 に 設 定 す る 。 こ れ ら の 属 性 に よ り 、 ス レ ッ ド 属 性 オ ブ ジ ェ ク ト attr を 使 っ て 作 成 さ れ る ス レ ッ ド の ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー が 決 定 さ れ る 。

pthread_attr_getschedparam() は 、 ス レ ッ ド 属 性 オ ブ ジ ェ ク ト attr の ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー 属 性 を param が 指 す バ ッ フ ァ ー に 入 れ て 返 す 。 ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー は 以 下 の 構 造 体 で 管 理 さ れ る 。

struct sched_param {
int sched_priority; /* Scheduling priority */ }; 見 て 分 か る 通 り 、 サ ポ ー ト さ れ て い る ス ケ ジ ュ ー リ ン グ パ ラ メ ー タ ー は 一 つ だ け で あ る 。 各 ス ケ ジ ュ ー リ ン グ ポ リ シ ー で 許 可 さ れ る ス ケ ジ ュ ー リ ン グ 優 先 度 の 詳 細 に つ い て は 、 sched(7) を 参 照 の こ と 。

pthread_create(3) を 呼 び 出 し た 際 に pthread_attr_setschedparam() で 行 っ た パ ラ メ ー タ ー 設 定 を 有 効 に す る に は 、 呼 び 出 し 側 で pthread_attr_setinheritsched(3) を 使 っ て 属 性 オ ブ ジ ェ ク ト attr の inherit−scheduler 属 性 を PTHREAD_EXPLICIT_SCHED に 設 定 し て お か な け れ ば な ら な い 。

返 り 値

成 功 す る と 、 こ れ ら の 関 数 は 0 を 返 す 。 エ ラ ー の 場 合 、 0 以 外 の エ ラ ー 番 号 を 返 す 。

エ ラ ー

POSIX.1 で は 、 pthread_attr_setschedparam() に つ い て EINVALENOTSUP が 規 定 さ れ て い る 。 Linux で は 、 こ れ ら の 関 数 は 常 に 成 功 す る (た だ し 、 移 植 性 や 将 来 も 動 作 す る こ と を 保 証 し た い ア プ リ ケ ー シ ョ ン で は 正 の エ ラ ー の 返 り 値 を 処 理 す る よ う に す べ き で あ る )。

属 性

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

準 拠

POSIX.1−2001.

注 意

Linux で サ ポ ー ト さ れ て い る ス レ ッ ド の ス ケ ジ ュ ー リ ン グ ポ リ シ ー の リ ス ト に つ い て は 、 pthread_attr_setschedpolicy(3) を 参 照 。

pthread_setschedparam(3) を 参 照 。

関 連 項 目

sched_get_priority_min(2), pthread_attr_init(3), pthread_attr_setinheritsched(3), pthread_attr_setschedpolicy(3), pthread_create(3), pthread_setschedparam(3), pthread_setschedprio(3), pthreads(7), sched(7)

こ の 文 書 に つ い て

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