c#Task关闭线程
时间: 2023-06-29 11:02:47 浏览: 141
在 C# 中,可以使用 `Task` 和 `CancellationToken` 来关闭一个线程。以下是一个简单的示例:
```csharp
using System.Threading;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
CancellationTokenSource cts = new CancellationTokenSource(); // 创建 CancellationTokenSource 对象
Task task = Task.Run(() =>
{
while (!cts.Token.IsCancellationRequested)
{
// 执行某些操作
}
}, cts.Token);
// 稍等一会儿后,取消任务
await Task.Delay(5000);
cts.Cancel();
// 等待任务完成
await task;
}
}
```
在上面的示例中,我们首先创建一个 `CancellationTokenSource` 对象,然后将它的 `Token` 属性传递给 `Task.Run` 方法。在任务中,我们使用 `cts.Token.IsCancellationRequested` 来判断任务是否应该被取消。最后,我们等待 5 秒钟后,调用 `cts.Cancel()` 方法来取消任务。
需要注意的是,在取消任务后,我们需要等待任务完成,以确保所有资源得到正确释放。
阅读全文
相关推荐
















