在下面的示例中,如果在代码离开 using 语句后进程仍在运行,会发生什么情况?
using (var p = new Process())
{
p.StartInfo.FileName = "c:\\temp\\SomeConsoleApp.exe";
p.Start();
}
最佳答案
应该将在您的系统上运行的操作系统进程与代表程序中它的“句柄”的Process
对象分开:
- 该进程会继续运行直到它完成,或者您使用特定于操作系统的方法终止它
Process
对象被释放,因此您的程序无法再与操作系统进程交互。
在 Process
对象上调用 Dispose()
方法不会终止操作系统进程。
关于c# - 没有 WaitForExit() 的 using 语句中的进程会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27300821/