Почему 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.