Существует программное обеспечение, встроенное в окна, который делает этот названный Windows System Resource Manager (WSRM), это сделает то, что Вы хотите т.е. приоритетные сервисы на основе ресурсов.
Очевидно, не открытый исходный код, но идет с ОС.
Я не знаю о внешнем инструменте, но Вы могли контролировать соответствующие счетчики производительности в своем сервисе и не сделать никакой работы (сон в течение некоторого времени период), если счетчики производительности, Вы думаете, релевантны, превышают пороги. Это не было бы вполне тем же как остановкой сервиса (это все еще будет резидентный объект в памяти), но должен достичь желаемой цели.
Одно преимущество этого подхода - то, что Вы не должны волноваться об установке и конфигурировании внешнего инструмента или контроле, что внешний инструмент все еще работает.
Вы могли установить предупреждение, которое могло работать на фиксированном пороге (скажите, что ЦП> =75), Для установки предупреждения на окнах вот является ссылка http://support.microsoft.com/kb/324752
Таким образом, Вы могли установить предупреждение для условия Использование ЦП> =75% и как командная строка, Вы могли использовать
net stop svcName
Это останавливает сервис, названный svcName.
У Вас могло быть другое предупреждение, определенное к противоположному Использованию ЦП <70% и как командная строка, которую Вы могли использовать
net start svcName
когда Вы это падает ниже порогов.
Я сохранил 5%-е поле между на и прочь, хотя Вы могли создать пакетный файл для задержки запуска и остановки сервиса слишком часто.
Надеюсь, это поможет