C#异步计数器的使用

1、

  CancellationTokenSource cancellationToken = new CancellationTokenSource();      
  public void InitData()
  {
      cancellationToken.Token.Register(() => { Name = "被取消了"; });
      int count = 0;
      Task.Run( () => {
          while (!cancellationToken.IsCancellationRequested)
          {
              Name += $"{count}一直在执行...";
              System.Console.WriteLine("一直在执行...");
              Thread.Sleep(1000);
              count++;
          }
      });

      cancellationToken.CancelAfter(5000);
  }

2、也可以写成

  CancellationTokenSource cancellationToken = new CancellationTokenSource();      
  public void InitData()
  {
      cancellationToken.Token.Register(() => { Name = "被取消了"; });
      int count = 0;
      Task.Run(async () => {
          while (!cancellationToken.IsCancellationRequested)
          {
              Name += $"{count}一直在执行...";
              System.Console.WriteLine("一直在执行...");
               await Task.Delay(1000);
              count++;
          }
      });

      cancellationToken.CancelAfter(5000);
  }

本文作者:孤沉

本文链接:https://www.cnblogs.com/guchen33/p/18475683

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   孤沉  阅读(7)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开