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

pthread_mutex_setprioceiling の構文

#include <pthread.h> 
int pthread_mutex_setprioceiling(pthread_mutex_t *restrict mutex, 
          int prioceiling, int *restrict old_ceiling);

pthread_mutex_setprioceiling()mutex の優先順位上限、つまり prioceiling を変更します。pthread_mutex_setprioceiling() は、mutex のロックが解除されている場合 mutex をロックするか、mutex を正常にロックできるようになるまでブロックして、mutex の優先順位上限を変更し、mutex を開放します。()mutex をロックするプロセスでは、優先順位保護プロトコルを守る必要はありません。

pthread_mutex_setprioceiling() が正常に終了すると、優先順位上限の以前の値が old_ceiling で返されます。pthread_mutex_setprioceiling() が失敗すると、mutex の優先順位上限は元のままになります。