可能是这个问题的反面:Process.HasExited returns true even though process is running?
我在一个进程上调用了Kill(),它似乎已经退出了。但是当我测试HasExited时,我得到了错误:
myProcess.Kill();
while ( !myProcess.HasExited )
{
Thread.Sleep(1000);
}
并且这将无限期地继续下去。当然,我必须更改此代码以最终停止等待,但是我很好奇为什么当进程似乎已脱离 map 时,为什么HasExited仍然返回false。
最佳答案
您是否要重定向标准输出? MSDN声明以下内容:
无论如何,建议的解决方法应该可以解决问题:
myProcess.Kill();
myProcess.WaitForExit();
关于c# - C#:即使该进程已终止,Process.HasExited返回false,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2779653/