Application.Exit无法完全终止我的应用程序

时间:2016-07-18 18:31:40

标签: c#

我以前叫Application.Exit终止我的申请。在某个时间点,我开始使用DLL,我无法完全终止我的应用程序(一个线程正在运行)。

但是,我可以致电Environment.Exit(0)并完全终止我的应用。

我已经阅读了一些有用的帖子。

[Closing Applications

[http://geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx][2]

看来 建议将Application.Exit()用于Windows应用程序和 建议将Environment.Exit(exitCode)用于控制台应用程序

这是我从其他帖子中读到的内容。

=====我之所以提出这个问题的原因,以及我仍然不清楚的事情:

现在,我只是在Environment.Exit(0)事件处理程序的末尾添加Application.Exit,因为我有Application.Exit的事件处理程序并在处理程序中保存了一些状态信息。

我仍然不确定我是否以正确的方式使用它。换句话说,调用Application.Exit()和Environment.Exit(exitCode)是否有意义

1 个答案:

答案 0 :(得分:1)

如果你真的需要立即终止应用程序并终止所有线程,那么你需要使用Environment.Exit(0)

如果您希望触发表单的“关闭”事件并让线程继续工作,则需要使用Application.Exit();

这实际上取决于你的情况。第一个就像你终止这个过程(杀死它)。第二个就像向App发送消息并礼貌地要求它完成手头的所有事情然后关闭。这允许通过触发关闭事件来保存一些状态信息(如果已实现)。