我Process.Kill()
用来杀死一个进程。像这样:
if( !process.WaitForExit( 5000 ) ) {
process.Kill();
}
有时进程会在两行之间退出,因此控制会进入内部if
,然后Kill
会产生异常:
System.InvalidOperationException
Cannot process request because the process (ProcessIdHere) has exited.
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.Kill()
//my code here
现在将代码包装到 try-catch 中似乎不是一个好主意,因为InvalidOperationException
可以出于其他原因调用。
有没有办法在描述的场景中杀死一个进程而不会出现异常?