マルチスレッドのプログラミング

スケジューリングパラメータの設定

pthread_attr_setschedparam(3C) は、スケジューリングパラメータを設定します。

pthread_attr_setschedparam の構文

int pthread_attr_setschedparam(pthread_attr_t *restrict tattr,
         const struct sched_param *restrict param);
#include <pthread.h> 
pthread_attr_t tattr; 
int ret; 
int newprio; 
sched_param param; 
newprio = 30; 
/* set the priority; others are unchanged */ 
param.sched_priority = newprio; 
/* set the new scheduling param */ 
ret = pthread_attr_setschedparam (&tattr, &param); 

スケジューリングパラメータは param 構造体で定義します。ただし、サポートされるのは優先順位のパラメータだけです。

pthread_attr_setschedparam の戻り値

pthread_attr_setschedparam() は、正常終了時に 0 を返します。それ以外の戻り値は、エラーが発生したことを示します。以下の条件が検出されると、この関数は失敗し、対応する値を返します。


EINVAL

説明:

param の値が NULL か、tattr の値が無効です。

pthread の優先順位は、次のいずれかの方法で管理できます。