我想写一个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
基础教程推荐
- linux – 如何在Debian Jessie中安装dotnet core sdk 2023-09-26
- C# 调用WebService的方法 2023-03-09
- C#控制台实现飞行棋小游戏 2023-04-22
- C# windows语音识别与朗读实例 2023-04-27
- C# List实现行转列的通用方案 2022-11-02
- ZooKeeper的安装及部署教程 2023-01-22
- 一个读写csv文件的C#类 2022-11-06
- unity实现动态排行榜 2023-04-27
- C#类和结构详解 2023-05-30
- winform把Office转成PDF文件 2023-06-14