PTHREAD_SETSCHEDPARAM

Section: C Library Functions (3)
Updated: LinuxThreads
IndexJM Home Page

 

名前

pthread_setschedparam, pthread_getschedparam - スレッドのスケージューリングパラメータを制御する

 

書式

#include <pthread.h>

int pthread_setschedparam(pthread_t target_thread, int policy, const struct sched_param *param);

int pthread_getschedparam(pthread_t target_thread, int *policy, struct sched_param *param);

 

説明

pthread_setschedparamはスレッドtarget_threadのスケジューリングパラメータをpolicyparamで示される値に変更する。policySCHED_OTHER( 通常の、リアルタイムでないスケジューリング ) 、SCHED_RR( ラウンドロビン方式のリアルタイムスケジューリング ) 、SCHED_FIFO( 先入れ先出し (FIFO) 方式のリアルタイムスケジューリング ) のいずれかの値をとる。paramは 2 つのリアルタイムポリシーに対する スケジューリング優先度を表す。 スケジューリングポリシーに関するさらなる情報はsched_setpolicy(2) を参照のこと。

リアルタイムスケジューリングポリシーであるSCHED_RRSCHED_FIFOは、スーパーユーザ権限をもったプロセスに限って使用できる。

pthread_getschedparamはスレッドtarget_threadのスケジューリングポリシーと スケジューリングパラメータを取得し、 それぞれpolicyparamで指し示される領域に格納する。

 

返り値

pthread_setschedparamおよびpthread_getschedparamは成功すると 0 を返し、エラーならば非 0 のエラーコードを返す。

 

エラー

エラーの場合、pthread_setschedparamは次のようなエラーコードを返す:
EINVAL
policySCHED_OTHERSCHED_RRSCHED_FIFOのいずれでもない。

EINVAL
指定されたポリシーではparamで指定された優先度パラメータは有効ではない。

EPERM
呼び出しプロセスはスーパユーザ権限を持っていない。

ESRCH
スレッドtarget_threadは無効またはすでに終了している。

EFAULT
paramが指し示す領域はプロセスのメモリ空間外の領域である。

エラーの場合、pthread_getschedparamは次のようなエラーコードを返す:

ESRCH
スレッドtarget_threadは無効またはすでに終了している。

EFAULT
policyまたはparamが指し示す領域はプロセスのメモリ空間外の領域である。

 

著者

Xavier Leroy <Xavier.Leroy@inria.fr>

 

関連項目

sched_setscheduler(2),sched_getscheduler(2),sched_getparam(2),pthread_attr_setschedpolicy(3),pthread_attr_setschedparam(3).


関連キーワード

pthread,param,スケジューリング,SCHED,policy,SETSCHEDPARAM,PTHREAD,sched,setschedparam,thread 

Index

名前
書式
説明
返り値
エラー
著者
関連項目

This document was created byman2html, using the manual pages.
Time: 20:43:08 GMT, August 08, 2017