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

pthread_attr_setinheritsched(3THR)

pthread_attr_setinheritsched(3THR) は、継承スケジューリング方針を設定します。

継承 (inherit) 値の PTHREAD_INHERIT_SCHED (デフォルト) の意味は、生成スレッドで定義されたスケジューリング方針を使用し、pthread_create() 呼び出しで定義されたスケジューリング方針は無視するということです。PTHREAD_EXPLICIT_SCHED を使用した場合は、pthread_create() 呼び出しでの属性が使用されます。


プロトタイプ:

int	pthread_attr_setinheritsched(pthread_attr_t *tattr, int inherit);

#include <pthread.h>

pthread_attr_t tattr;
int inherit;
int ret;

/* 現在のスケジューリング方針を使用する */
ret = pthread_attr_setinheritsched(&tattr, PTHREAD_EXPLICIT_SCHED);

戻り値

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


EINVAL

tattr の値は無効です。


ENOTSUP

属性をサポートされていない値に設定しようとしました。