【发布时间】:2010-09-11 02:32:42
【问题描述】:
我的应用程序由主消息循环 (GUI) 和线程 (Task.Factory) 组成。
在线程中,我使用var p = new Process(); 调用一些第 3 方应用程序
但是当我在消息循环中调用 Application.Exit(); 时 - 我可以看到在线程中启动的进程仍在内存中并且正在执行。
所以问题是 - 如何在 Application.Exit(); 被调用后立即终止所有线程和进程?
UPD:
旧:
p.WaitForExit();
新:
while (!p.WaitForExit(1000))
{
if (FlagToExit)
{
p.Kill();
return;
}
}
【问题讨论】:
标签: c# .net multithreading process