Какова связь между приоритетом pthread и политикой pthread? - PullRequest
0 голосов
/ 11 ноября 2019

В настоящее время я изучаю pthreads и пытаюсь понять связь между приоритетом потока и политикой. Что я знаю до сих пор:

Приоритет потока - это целое число, которое указывает приоритет. Чем выше это число, тем выше приоритет, который поток обрабатывает ОС.

Политика потока определяет, как поток выполняется среди процессов с общим номером приоритета. SCHED_RR и SCHED_FIFO - это политики в реальном времени, которые выполняются непрерывно, пока не будет введена явная команда «сна». Таким образом, программист должен очень тщательно писать код при использовании этих политик. SCHED_OTHER - это политика циклического перебора, которая не выполняется в реальном времени.

Однако, допустим, у меня есть следующие сценарии (предположим, что каждый поток не использует команду «сна»).

Thread 1: priority = 0, policy = SCHED_OTHER
Thread 2: priority = 1, policy = SCHED_OTHER

// would thread 1 run at all? 

Thread 1: priority = 0, policy = SCHED_RR
Thread 2: priority = 1, policy = SCHED_RR

// would thread 1 run at all? 

Я не понимаю, влияет ли политика потоков на приоритет потока или приоритет политики всегда превосходит политику.

Редактировать: Найдена веб-страница, которая прояснила большую часть моей путаницы: https://computing.llnl.gov/tutorials/pthreads/man/sched_setscheduler.txt

...