我正在开发.NET控制台应用程序,并继续查看其他开发人员在其catch语句中在何处使用Environment.ExitCode = -1;
。我已经阅读了答案here,很高兴发现
您可以使用以下属性设置退出代码:Environment.ExitCode = -1;。如果没有其他设置返回代码或使用上述其他选项之一的情况,将使用此方法。
再次,我在上面放置的链接不是一个相同的问题,这是一个关于方法使用的问题,而不是关于如何设置代码的问题。
据我了解,这表明如果未提供其他退出代码并且未提供其他退出方法,则使用-1。如果我在这个假设上错了,那就弄清楚了。
哪个让我想知道这是否与调用Environment.Exit(-1);
相同?
在这两种情况下,ExitCode都设置为-1,以报告给操作系统。是否通过调用Environment.Exit(-1);
直接报告它破坏了Environment.ExitCode = -1;
的能力?
答案 0 :(得分:2)
Next
终止该过程,并向操作系统发送退出代码-1。 Environment.Exit(-1)
不会终止进程,但会在进程终止时将退出代码设置为-1。
所以这是用法差异的一个示例:
Environment.ExitCode = -1
public class ExitCodeUsage
{
public static void Main()
{
string[] args = Environment.GetCommandLineArgs();
if (args.Length == 1) {
Environment.ExitCode = -1;
}
else {
//Do stuff that requires the length of args to be not equal to 1.
}
}
}