Windows相当于“不错”
有没有一个Windows的Unix命令,好吗?
我正在寻找我可以在命令行中使用的东西,而不是从任务pipe理器中的“设置优先级”菜单。
我在Google上find这个的尝试已经被那些不能拿出更好的形容词的人所挫败。
如果要在启动进程时设置优先级,可以使用内置的启动命令:
START [“title”] [/ Dpath] [/ I] [/ MIN] [/ MAX] [/ SEPARATE | /共享] [/ LOW | / NORMAL | / HIGH | / REALTIME | / ABOVENORMAL | /低于一般] [/ WAIT] [/ B] [命令/程序] [参数]
使用低通过正常选项设置启动的命令/程序的优先级。 看起来像最简单的解决scheme。 没有下载或脚本写作。 其他解决scheme可能在已经运行过程中工作。
如果你使用PowerShell ,你可以写一个脚本让你改变进程的优先级。 我在Monad博客上find了以下PowerShellfunction:
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)`"" }
在PowerShell提示符下,你可以做一些事情:
set-ProcessPriority SomeProcessName "High"
也许你想考虑使用ProcessTamer来自动化降级或升级进程优先级的过程。
我已经使用了两年了。 这很简单,但真的有效!
从http://techtasks.com/code/viewbookcode/567
# This code sets the priority of a process # --------------------------------------------------------------- # Adapted from VBScript code contained in the book: # "Windows Server Cookbook" by Robbie Allen # ISBN: 0-596-00633-0 # --------------------------------------------------------------- use Win32::OLE; $Win32::OLE::Warn = 3; use constant NORMAL => 32; use constant IDLE => 64; use constant HIGH_PRIORITY => 128; use constant REALTIME => 256; use constant BELOW_NORMAL => 16384; use constant ABOVE_NORMAL => 32768; # ------ SCRIPT CONFIGURATION ------ $strComputer = '.'; $intPID = 2880; # set this to the PID of the target process $intPriority = ABOVE_NORMAL; # Set this to one of the constants above # ------ END CONFIGURATION --------- print "Process PID: $intPID\n"; $objWMIProcess = Win32::OLE->GetObject('winmgmts:\\\\' . $strComputer . '\\root\\cimv2:Win32_Process.Handle=\'' . $intPID . '\''); print 'Process name: ' . $objWMIProcess->Name, "\n"; $intRC = $objWMIProcess->SetPriority($intPriority); if ($intRC == 0) { print "Successfully set priority.\n"; } else { print 'Could not set priority. Error code: ' . $intRC, "\n"; }