net5中如何让一个方法运行时启动关闭时关闭
可以使用CancellationToken来实现方法的启动和关闭。
-
在方法中创建CancellationTokenSource对象。
-
在方法中使用CancellationTokenSource.Token属性获取CancellationToken对象。
-
在方法中使用CancellationToken.ThrowIfCancellationRequested()方法检查是否已取消。
-
在需要关闭方法时,调用CancellationTokenSource.Cancel()方法取消任务。
示例代码:
public static async Task MyMethod(CancellationToken cancellationToken)
{
try
{
while (true)
{
// 检查是否已取消
cancellationToken.ThrowIfCancellationRequested();
// 执行任务
// 模拟延迟
await Task.Delay(1000);
}
}
catch (OperationCanceledException)
{
// 任务已取消,执行清理操作
}
}
// 启动方法
var cts = new CancellationTokenSource();
var task = MyMethod(cts.Token);
// 关闭方法
cts.Cancel();
``
原文地址: https://gggwd.com/t/topic/huYU 著作权归作者所有。请勿转载和采集!