C# 中通过CancellationTokenSource实现对超时任务的取消

Posted lunawzh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 中通过CancellationTokenSource实现对超时任务的取消相关的知识,希望对你有一定的参考价值。

在Task中用CancellationTokenSource来取消任务,可以手动 cancelTokenSource.Cancel()取消,还有new时就设置取消时间var cancelTokenSource = new CancellationTokenSource(2000); 也可以在任务中 cancelTokenSource.CancelAfter(2000)实现同样的效果。

            var cancelTokenSource = new CancellationTokenSource();
            //var cancelTokenSource = new CancellationTokenSource(2000);

            Task.Run(() =>
            {
                //cancelTokenSource.CancelAfter(2000);
                while (!cancelTokenSource.IsCancellationRequested)
                {
                    Console.WriteLine(DateTime.Now);
                    Thread.Sleep(1000);
                }
            }, cancelTokenSource.Token);

            Console.WriteLine("Press any key to cancel");
            Console.ReadLine();
            cancelTokenSource.Cancel();
            Console.WriteLine("Done");

 

以上是关于C# 中通过CancellationTokenSource实现对超时任务的取消的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 中通过指纹查找证书

捕获文件在 C# 中通过蓝牙发送

在 C# 中通过 Telnet 发送和接收命令

在 C# 中通过鼠标拖动来移动控件

在c#中通过ref关键字调用类对象[重复]

在 C# 中通过引用或值传递对象