Снижения приоритета для определенных процессов в Windows
Ситуация: сервер RDP, где люди работают в 1С. Часть пользователей к сожалению не удается переубедить НЕ пользоваться браузерами на удаленном рабочем столе, в результате иногда получаются ситуации что процессор забит на 100% из-за открытых firefox и chrome в ущерб работе непосредственно 1С.
Выход: принудительное понижение приоритета выполнения браузеров при помощи скрипта PowerShell
Скрипт prior.ps1:
1 2 3 4 5 6 7 8 9 10 11 |
#PowerShell function set-ProcessPriority { param($processName = $(throw "Enter process name"), $priority = "Normal") get-process -processname $processname | foreach { $_.PriorityClass = $priority } write-host "`"$($processName)`"'s priority is set to `"$($priority)`"" } set-ProcessPriority chrome BelowNormal set-ProcessPriority firefox BelowNormal set-ProcessPriority sbis3plugin BelowNormal Start-Sleep -Seconds 3 |
Для того, чтобы он без проблемно выполнялся через планировщик заданий, так-же необходимо задать групповые политики для PowerShell