2010-03-10 7 views
4

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

+2

Невозможно установить ограничения на жесткое значение в Windows (например, 25%). Настройка приоритета потока - это вариант, который вы должны учитывать, однако реальная вещь, которую вам нужно сделать, - это выяснить, почему процессор бросает вызов. –

ответ

0

Ширина полосы памяти и использование кэша процессора в наши дни так же, как совпадение проблемы, - это время процессора.

Я не знаю ОС, которая сохранила до ...

Вы можете попробовать использовать Thread.Sleep спать в течение 50% времени стены, грязный, но может работать.

5

Вам необходимо более внимательно изучить ваше приложение. Почему это бросает исключения, и почему эти исключения используют так много CPU?

0

Если вам нужно контролировать использование ЦП вне кода, я бы предложил использовать ThreadMaster http://threadmaster.tripod.com/ Это немного устарело, но я использовал его в прошлом, и он смог успешно решить мою проблему.

Это не идеальный вариант для долгосрочного решения, но может быть хорошим инструментом в некоторых конкретных сценариях.

Смежные вопросы