我想写一个Linux服务(比如Windows服务),但我不知道如何安全地停止这项服务.我读到了AssemblyLoadContext.Default.Unloading += MethodInvokedOnSigTerm;但它不存在于.NET Core 1.1中.你有什么想法 ?解决方法:如果...
我想写一个Linux服务(比如Windows服务),但我不知道如何安全地停止这项服务.
我读到了
AssemblyLoadContext.Default.Unloading += MethodInvokedOnSigTerm;
但它不存在于.NET Core 1.1中.
你有什么想法 ?
解决方法:
如果您能够更新您的应用程序以使用.Net Core 1.2,它可以通过AppDomain.ProcessExit事件完成,但在.Net Core 1.1中,根据this github issue,这是不可能的.
请注意,您需要至少引用Microsoft.NETCore.App 1.2.0-beta才能使用较新的API.另外,为了引用更新的版本,您需要使用一组较新的CLI工具,至少预览4版本的工具.您可能会发现新的API功能可用性here.
根据该站点,System.Runtime.Loader.AssemblyLoadContext.Unloading事件确实存在于自0700年的.NET Core 1.0以来.您是否尝试安装该软件包?我认为它会解决你的问题.
using System.Runtime.Loader;
AssemblyLoadContext.Default.Unloading += MethodInvokedOnSigTerm;
本文标题为:c# – 在linux服务上处理kill – .NET Core 1.1
- .NET CORE DI 依赖注入 2023-09-27
- 在C# 8中如何使用默认接口方法详解 2023-03-29
- Unity Shader实现模糊效果 2023-04-27
- Oracle中for循环的使用方法 2023-07-04
- Unity3D实现渐变颜色效果 2023-01-16
- user32.dll 函数说明小结 2022-12-26
- c# 模拟线性回归的示例 2023-03-14
- C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16
- 如何使用C# 捕获进程输出 2023-03-10
- WPF使用DrawingContext实现绘制刻度条 2023-07-04