我的应用程序包括主消息循环(GUI)和线程(Task.Factory).
在线程中我用一些第三方应用程序调用 var p = new Process();
但是当我Application.Exit();在消息循环中调用时- 我可以看到在线程中启动的进程仍然在内存中并且正在执行.
所以问题是 - 如何Application.Exit();在调用之后立即杀死所有线程和进程?
UPD:
旧:
p.WaitForExit();
Run Code Online (Sandbox Code Playgroud)
新:
while (!p.WaitForExit(1000))
{
if (FlagToExit)
{
p.Kill();
return;
}
}
Run Code Online (Sandbox Code Playgroud)