c# - 我怎么知道 Kestrel 何时开始收听?

标签 c# asp.net-core kestrel

我需要通知 systemd 我的服务已成功启动,启动后需要运行的任务要求服务器已经在监听目标 Unix域套接字。

我正在使用 IWebHost::Run 来启动服务器,这是一个阻塞调用。此外,我找不到任何明显的方法来设置委托(delegate)或回调事件以成功初始化。

有人吗?

最佳答案

您可以使用 Microsoft.AspNetCore.Hosting.IApplicationLifetime :

/// <summary>
/// Triggered when the application host has fully started and is about to wait
/// for a graceful shutdown.
/// </summary>
CancellationToken ApplicationStarted { get; }

看看这个SO post配置示例。

关于c# - 我怎么知道 Kestrel 何时开始收听?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44662711/

相关文章:

c# - 使用隐式类型 var 的任何优点

testing - 如何实现 IdentityServer4 的集成测试?

c# - 有没有办法在没有任何代理的情况下创建真正的自托管.Net(核心)网络应用程序

azure - 如何阻止出站 HTTP 连接超时

asp.net-core - 无法配置 HTTPS 端点。未指定服务器证书,找不到默认的开发者证书

c# - 使用指向 C# 中的函数的指针作为参数调用 C++ 函数

c# - C# 中 azure 的组合缓存提供程序

c# - 如何拦截来自 C# 客户端 Web 代理的出站和入站 Soap 消息

asp.net-core - 将 Microsoft.EntityFrameworkCore.Tools 添加到 ASP.NET Core 项目

asp.net-core - 如何管理停止的红隼服务