0

这种方法的文档说:

将消息写入 Windows 应用程序事件日志后立即终止进程,然后将消息和可选的异常信息包含在向 Microsoft 报告的错误中。

但是,当部署到没有 EventLog 或 Windows 错误报告的 Linux 环境时呢?

我希望能够以这种方式立即终止控制台应用程序的好处,但目前尚不清楚这是否是正确的使用方法。Linux有更好的方法吗?

计划是让我的控制台应用程序在 Linux 容器中运行。我希望应用程序能够终止,从而导致容器终止,这样基础设施就可以启动一个新的。但是,我刚刚开始使用 Docker(我的 Linux 技能非常生疏)。所以我在这里不知所措...

我可能不得不旋转一个小样本并四处修补,但希望在这里提出这个问题,以防有人能提供更快的答案。

TIA

4

1 回答 1

1

没有什么比试一试的好!

using System;

namespace testing
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            System.Environment.FailFast("oh shoot");
            Console.WriteLine("Bye!");
        }
    }
}

给我

/tmp/testing$ dotnet run
Hello World!
FailFast:
oh shoot

   at System.Environment.FailFast(System.String, System.Exception)
   at System.Environment.FailFast(System.String)
   at testing.Program.Main(System.String[])

我没有在/var/log. 所以我猜它只是快速存在并将日志转储到控制台。

于 2019-01-22T19:47:51.170 回答