dotnet core console app 平滑关闭-关闭事件研究

控制台启动后,我一般采用线程休眠、读取控制台字符输入等阻塞main函数,以达到app一直执行的状态,读取字符方式最方便,当你键入字符时,控制台程序结束,在调试模式时非常灵活。

控制台启动后,我一般采用线程休眠、读取控制台字符输入等阻塞main函数,以达到app一直执行的状态,读取字符方式最方便,当你键入字符时,控制台程序结束,在调试模式时非常灵活。

当app程序需要部署到linux环境上时,问题变得复杂了,为了监控app程序,我配置了supervisor监控.net Core的控制台程序,关闭信号采用INT方式。这时候怎么响应程序的关闭,并安全善后后退出呢?

幸好.net core 2.03已经解决了linux的相应问题,而目前.net core的运行版本已经是2.14了,谢天谢地,我采用以下方式均可以正确获得关闭事件。

注意: 检查下有无 “System.Runtime.Loader”:“4.0.0”加载。

示例代码就不上了,这些事件都可以获取你的退出了,在事件处理中尽情发挥吧。

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注