gpt4 book ai didi

c# - 应如何在 IHostedService 中使用取消标记?

转载 作者:太空狗 更新时间:2023-10-29 20:35:50 26 4
gpt4 key购买 nike

ASP.NET Core 2.0 documentation定义 IHostedService 接口(interface)如下:

StartAsync(CancellationToken) - Called after the server has started and IApplicationLifetime.ApplicationStarted is triggered. StartAsync contains the logic to start the background task.

StopAsync(CancellationToken) - Triggered when the host is performing a graceful shutdown. StopAsync contains the logic to end the background task and dispose of any unmanaged resources. If the app shuts down unexpectedly (for example, the app's process fails), StopAsync might not be called.

如果调用 StopAsync 来关闭服务,那么取消 token 参数有什么用?它们究竟应该如何使用?

最佳答案

传递给 IHostedService.StopAsync() 的取消 token 源自 WebHost.StopAsync()通常是与 ASP.NET Core 应用程序的默认关闭命令相关联的取消 token (例如 CTRL + CSIGTERM) .此 token 与绑定(bind)到(可配置的)超时的新 token 链接。例如,请参阅 RunAsync() extension method .我相信默认超时是 5 秒。这意味着当主机在 token 源上调用 Cancel() 或超时开始时,将请求取消。

关于c# - 应如何在 IHostedService 中使用取消标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50103428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com