正确使用Environment.ExitCode = -1

时间:2019-07-10 18:54:13

标签: c# .net

我正在开发.NET控制台应用程序,并继续查看其他开发人员在其catch语句中在何处使用Environment.ExitCode = -1;。我已经阅读了答案here,很高兴发现

  

您可以使用以下属性设置退出代码:Environment.ExitCode = -1;。如果没有其他设置返回代码或使用上述其他选项之一的情况,将使用此方法。

再次,我在上面放置的链接不是一个相同的问题,这是一个关于方法使用的问题,而不是关于如何设置代码的问题。

据我了解,这表明如果未提供其他退出代码并且未提供其他退出方法,则使用-1。如果我在这个假设上错了,那就弄清楚了。

哪个让我想知道这是否与调用Environment.Exit(-1);相同? 在这两种情况下,ExitCode都设置为-1,以报告给操作系统。是否通过调用Environment.Exit(-1);直接报告它破坏了Environment.ExitCode = -1;的能力?

1 个答案:

答案 0 :(得分:2)

Next终止该过程,并向操作系统发送退出代码-1。 Environment.Exit(-1)不会终止进程,但会在进程终止时将退出代码设置为-1。

我找到了herehere这些信息。

所以这是用法差异的一个示例:

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.
      }
   }
}