2 つのスレッドを作成しました。デフォルトでは、0
pthread_getschedparam を使用して確認できる優先度があり、それぞれの優先度を上げようとし2
ます3
。しかし、やろうとするとエラーが発生します
error setting priority for T1: (1), Operation not permitted
error setting priority for T2: (1), Operation not permitted
のスケジューリング ポリシーを使用SCHED_RR
しました
int sched = SCHED_RR;
そして、これを実行しました:-
if (pthread_setschedparam(t1, sched, &t1_param) != 0)
{
std::cout << "error setting priority for T1: (" << errno << "), " <<
strerror(errno) << std::endl;
}
優先度がSCHED_RRの制限内1
にあるため、スレッドの優先度を変更できない理由は何ですか。99