Почему C#.Net позволяет выбирать только 5 приоритетов потоков?

Мне интересно, почему.NET предлагает только 5 приоритетов потоков (то есть, наивысший, выше нормального и т. Д.) На выбор, если ОС Windows использует 32 приоритета?

1 ответ

Решение

Windows использует приоритет процесса вместе с приоритетом потока для вычисления общего приоритета. Узнав об этом, вы можете найти приоритеты процессов в Google и, возможно, найти приоритеты планирования в MSDN.

Я был бы очень признателен, если бы вы могли прочитать книгу 6-е издание Windows Internals, часть 1, которая подробно описывает ее на странице 410++.

В C# вы можете попробовать

using System.Diagnostics;
using System.Threading;
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.AboveNormal;
Thread.CurrentThread.Priority = ThreadPriority.Highest;

и посмотрите на результаты с ProcessExplorer.

Другие вопросы по тегам