closures应用程序

closuresC#应用程序时,最佳做法是什么?

我已经读过,你可以使用:

Environment.Exit(0); or Application.Exit(); 

但有什么区别?

而且,关于Environment.Exit(0),我在使用Java之前使用过退出代码,但从未完全理解它们的用途。 他们在C#中退出应用程序时扮演什么angular色?

System.Windows.Forms.Application.Exit() – 通知所有的消息泵,他们必须终止,然后closures消息处理后的所有应用程序窗口。 此方法停止所有线程上运行的消息循环,并closures应用程序的所有窗口。 此方法不强制应用程序退出。 Exit方法通常从消息循环中调用,并强制Run返回。 要仅退出当前线程的消息循环,请调用ExitThread。 如果您正在运行WinForms应用程序,这是调用。 作为一般指导,如果您调用System.Windows.Forms.Application.Run,​​则使用此调用。

System.Environment.Exit(exitCode) – 终止此过程,并为底层操作系统提供指定的退出代码。 此调用要求您具有SecurityPermissionFlag.UnmanagedCode权限。 如果您不这样做,则会发生SecurityException错误。 如果您正在运行控制台应用程序,这是调用。

我希望最好使用Application.Exit

检查此链接Application.Exit()与Application.ExitThread()与Environment.Exit()和http://geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx

Application.Exit用于Windows窗体应用程序 – 它通知所有的消息泵,他们应该终止,等待他们完成处理事件,然后终止应用程序。 请注意,它不一定强制应用程序退出。

Environment.Exit适用于所有Windows应用程序,但主要用于控制台应用程序。 它立即终止与给定的退出代码的过程。

一般来说,您应该在控制台应用Application.Exit中的Windows窗体应用程序和Environment.Exit中使用Application.Exit (尽pipe我更喜欢让Main方法/入口点运行完成,而不是在控制台应用程序中调用Environment.Exit )。

有关更多详细信息,请参阅MSDN文档。

他们在C#中退出应用程序时扮演什么angular色?

与其他应用程序相同。 基本上他们回到调用者。 如果开始是一个iicon双击,则是不适用的。 相关的是调用是一个batch file,决定应用程序是否在返回码上工作。 所以,除非你编写一个需要这个的程序,否则返回代码是不相关的。

但有什么区别?

一个来自System.Windows.Forms?.Application的环境。 function在那里不应该有很大的区别。