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在那里不应该有很大的区别。