Мне интересно, почему .NET предлагает только 5 приоритетов потоков (т. Е. Самый высокий, вышеNormal и т. Д.) На выбор, если ОС Windows использует 32 приоритета?Почему C# .Net разрешает только 5 приоритетов потоков?
ответ
Windows использует приоритет процесса вместе с приоритетом потока для вычисления общего приоритета. Как только вы это знаете, вы можете использовать Google для приоритетов процессов и, возможно, найдете Scheduling Priorities on MSDN.
Я был бы очень признателен, если бы вы могли прочитать книгу Windows Internals 6-е издание, часть 1, в котором подробно описывается на странице 410 ++.
В C# вы можете попробовать
using System.Diagnostics;
using System.Threading;
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.AboveNormal;
Thread.CurrentThread.Priority = ThreadPriority.Highest;
и посмотреть на результаты с ProcessExplorer.
Спасибо за четкий ответ. Таким образом, сочетание приоритета процесса и приоритета потока позволит мне использовать более 5 приоритетов, упомянутых выше в ОС Windows. Я бы проверял этот ответ как полезный, если бы смог, но, к сожалению, я не могу из-за всех нисходящих я получил! – user3186786
- 1. Настройка приоритетов потоков в C
- 2. Функция, которая разрешает только N параллельных потоков
- 3. Передача приоритетов потоков пулам потоков
- 4. .NET сборка приоритетов загрузки
- 5. Почему VS2015 разрешает функции C# 6.0 для приложений .Net 4.5.2?
- 6. Почему имена потоков в .NET?
- 7. Настройки приоритетов потоков от запущенного процесса
- 8. C++ конструктор очередей приоритетов
- 9. .NET Dictionary: только перечисление потоков безопасно?
- 10. Почему параметр ParameterizedThreadStart разрешает только параметр объекта?
- 11. Почему только пользовательский интерфейс разрешает изменять пользовательский интерфейс?
- 12. создание очереди приоритетов - C++
- 13. Почему C# разрешает недопустимое значение перечисления
- 14. Почему запускается только небольшое количество потоков?
- 15. Очередь приоритетов Objective-c
- 16. C# - Динамический список приоритетов
- 17. Assembly.LoadFrom() разрешает в .NET 4.0
- 18. Laravel 5 маршрут не разрешает
- 19. Почему C++ не разрешает перегрузку шаблона?
- 20. Почему C++ разрешает целое число присваиваться строке?
- 21. Почему компилятор разрешает vector.begin() = vector.end() в C++?
- 22. Почему Apple разрешает .NET на iPhone, но не Flash?
- 23. .NET - Синхронизация потоков
- 24. Почему подключение этого сокета разрешает только 1 отправку и получение?
- 25. Реализация очереди приоритетов в C++
- 26. Почему ScheduledThreadPoolExecutor принимает только фиксированное количество потоков?
- 27. Параллельная очередность приоритетов в .NET 4.0
- 28. locationServiceEnabled разрешает только iPhone 4?
- 29. Почему количество неиспользуемых физических потоков колеблется в приложении .NET?
- 30. C# 5 async/ожидают, что механика потоков ошибается?
Пять уровней приоритета должны быть достаточными для любого человека. –
Это один из вопросов «вы должны были бы задать Microsoft». – Amy
Я не согласен со всеми downvotes и помещает его в режим ожидания. На это есть четкий ответ. –