未来的路上 發表於 2019-10-17 10:30:00

c# 异步编程

<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word"><span style="color: rgba(107, 107, 107, 1); font-size: 12px; font-weight: 400">原文链接:</span></span>https://blog.csdn.net/zuheyawen/article/details/99863588</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">前言</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">C#异步编程有几种实现方式,异步方法就是其中的一种。异步方法是 C#5.0 才有的新特性,主要采用 async、await 关键字声明为异步方法,完成对方法的异步调用。C#5.0 对应的 VS 版本是 VS2012,对应的 .NET Framework 版本是 v4.5,所以需要在此基础上才支持。(否则可能报:找不到“async”修饰符所需的所有类型。目标框架版本是否不正确,或者缺少对程序集的引用?)</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">什么是异步方法</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1. 异步方法,是指在执行当前方法的同时,可以异步的去调用其他方法(异步方法),并且不会阻塞当前方法的线程。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2. 使用了 async 修饰符的方法称为异步方法,通常配合 await 运算符和 Task 异步任务一起使用。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) 如果方法使用了 async 修饰符,则方法中需要包含一个以上 await 运算符,否则将以同步执行。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 反之,如果方法中包含一个以上 await 运算符,则必须声明为一个异步方法,即使用 async 修饰符。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">3. Task 分为两种:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) Task,表示可以执行一个异步操作,声明如下:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">public class Task : IAsyncResult, IDisposable { }<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) Task&lt;TResult&gt;,表示可以执行带有返回值的异步操作,声明如下:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">public class Task&lt;TResult&gt; : Task { }</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">4. 异步方法的返回类型必须为 void、Task、Task&lt;TResult&gt; 中的其中一种。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) void,表示无返回值,不关心异步方法执行后的结果,一般用于仅仅执行某一项任务,但是不关心结果的场景。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) Task,表示异步方法将返回一个 Task 对象,该对象通常用于判断异步任务是否已经完成,可以使用 taskObj.Wait() 方法等待,或者 taskObj.IsCompleted 判断。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">3) Task&lt;TResult&gt;,表示异步方法将返回一个 Task&lt;TResult&gt; 对象,该对象的 Result 属性则是异步方法的执行结果,调用该属性时将阻塞当前线程(异步方法未执行完成时)。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">归纳一下:void 不关心结果;Task 只关心是否执行完成;Task&lt;TResult&gt; 不止关心是否执行完成,还要获取执行结果。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">下面通过几个生活中比较形象的例子来理解异步方法的使用<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">1. 模拟扔垃圾(不关心结果,返回 void 类型)</span></p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">/// &lt;summary&gt;
/// 扔垃圾
/// &lt;/summary&gt;
public void DropLitter()
{
    Console.WriteLine("老婆开始打扫房间,线程Id为:{0}", GetThreadId());
    Console.WriteLine("垃圾满了,快去扔垃圾");
    CommandDropLitter();
    Console.WriteLine("不管他继续打扫,线程Id为:{0}", GetThreadId());
    Thread.Sleep(100);
    Console.WriteLine("老婆把房间打扫好了,线程Id为:{0}", GetThreadId());
}

/// &lt;summary&gt;
/// 通知我去扔垃圾
/// &lt;/summary&gt;
public async void CommandDropLitter()
{
    Console.WriteLine("这时我准备去扔垃圾,线程Id为:{0}", GetThreadId());
    await Task.Run(() =&gt;
    {
      Console.WriteLine("屁颠屁颠的去扔垃圾,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
    });
    Console.WriteLine("垃圾扔了还有啥吩咐,线程Id为:{0}", GetThreadId());
}
</pre>
</div>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="373" height="120" data-src="https://img-blog.csdnimg.cn/20190820171339331.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">以上代码在 CommandDropLitter() 方法上加了 async 修饰符,并且使用 await 运算符开启了一个新的 Task 去执行另一个任务。注意:当前线程遇到 await 时,则立刻跳回调用方法继续往下执行。而 Task 执行完成之后将执行 await 之后的代码,并且与 await 之前的线程不是同一个。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">2.模拟打开电源开关(关心是否执行完成,返回 Task 类型)</span></p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">/// &lt;summary&gt;
/// 打开电源开关
/// &lt;/summary&gt;
public void OpenMainsSwitch()
{
    Console.WriteLine("我和老婆正在看电视,线程Id为:{0}", GetThreadId());
    Console.WriteLine("突然停电了,快去看下是不是跳闸了");
    Task task = CommandOpenMainsSwitch();
    Console.WriteLine("没电了先玩会儿手机吧,线程Id为:{0}", GetThreadId());
    Thread.Sleep(100);
    Console.WriteLine("手机也没电了只等电源打开,线程Id为:{0}", GetThreadId());

    //task.Wait();    //所以这里将被阻塞,直到任务完成
    //或者
    while (!task.IsCompleted) { Thread.Sleep(100); }

    Console.WriteLine("又有电了我们继续看电视,线程Id为:{0}", GetThreadId());
}

/// &lt;summary&gt;
/// 通知我去打开电源开关
/// &lt;/summary&gt;
public async Task CommandOpenMainsSwitch()
{
    Console.WriteLine("这时我准备去打开电源开关,线程Id为:{0}", GetThreadId());
    await Task.Run(() =&gt;
    {
      Console.WriteLine("屁颠屁颠的去打开电源开关,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
    });

    Console.WriteLine("电源开关打开了,线程Id为:{0}", GetThreadId());
}
</pre>
</div>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="397" height="134" data-src="https://img-blog.csdnimg.cn/201908201715276.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) 可见,调用 Wait() 方法后,当前线程被阻塞了,直到 Task 执行完成后,当前线程才继续执行。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 注意:由于 CommandOpenMainsSwitch() 是一个异步方法,虽然返回类型为 Task 类型,但是在我们代码中并没有写(也不能写) return task 语句,这是为什么呢?可能是这种返回类型比较特殊,或者编译器自动帮我们完成了吧!就算写也只能写 return 语句,后面不能跟对象表达式。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">3. 模拟去买盐(不止关心是否执行完成,还要获取执行结果。返回 Task&lt;TResult&gt; 类型)</span></p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">/// &lt;summary&gt;
/// 做饭
/// &lt;/summary&gt;
public void CookDinner()
{
    Console.WriteLine("老婆开始做饭,线程Id为:{0}", GetThreadId());
    Console.WriteLine("哎呀,没盐了");
    Task&lt;string&gt; task = CommandBuySalt();
    Console.WriteLine("不管他继续炒菜,线程Id为:{0}", GetThreadId());
    Thread.Sleep(100);
    string result = task.Result;    //必须要用盐了,等我把盐回来(停止炒菜(阻塞线程))
    Console.WriteLine("用了盐炒的菜就是好吃【{0}】,线程Id为:{1}", result, GetThreadId());
    Console.WriteLine("老婆把饭做好了,线程Id为:{0}", GetThreadId());
}

/// &lt;summary&gt;
/// 通知我去买盐
/// &lt;/summary&gt;
public async Task&lt;string&gt; CommandBuySalt()
{
    Console.WriteLine("这时我准备去买盐了,线程Id为:{0}", GetThreadId());

    string result = await Task.Run(() =&gt;
    {
      Console.WriteLine("屁颠屁颠的去买盐,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
      return "盐买回来了,顺便我还买了一包烟";

    });

    Console.WriteLine("{0},线程Id为:{1}", result, GetThreadId());

    return result;
}
</pre>
</div>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="551" height="135" data-src="https://img-blog.csdnimg.cn/2019082017165389.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) 以上代码 task.Result 会阻塞当前线程,与 task.Wait() 类似。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 注意:与前面返回类型为 Task 的 CommandOpenMainsSwitch() 方法一样,虽然 CommandBuySalt() 方法返回类型为 Task&lt;string&gt;,但是我们的返回语句是 return 字符串。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">其他示例</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1. 在前面(模拟去买盐)的示例中,异步方法中只开启了一个 Task,如果开启多个 Task 又是什么情况,看代码:</p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">public void AsyncTest()
{
    Console.WriteLine("AsyncTest() 方法开始执行,线程Id为:{0}", GetThreadId());
    Task task = Test1();
    Console.WriteLine("AsyncTest() 方法继续执行,线程Id为:{0}", GetThreadId());
    task.Wait();
    Console.WriteLine("AsyncTest() 方法结束执行,线程Id为:{0}", GetThreadId());
}

public async Task Test1()
{
    Console.WriteLine("Test1() 方法开始执行,线程Id为:{0}", GetThreadId());
    await Task.Factory.StartNew((state) =&gt;
    {
      Console.WriteLine("Test1() 方法中的 {0} 开始执行,线程Id为:{1}", state, GetThreadId());
      Thread.Sleep(1000);
      Console.WriteLine("Test1() 方法中的 {0} 结束执行,线程Id为:{1}", state, GetThreadId());
    }, "task1");

    await Task.Factory.StartNew((state) =&gt;
    {
      Console.WriteLine("Test1() 方法中的 {0} 开始执行,线程Id为:{1}", state, GetThreadId());
      Thread.Sleep(3000);
      Console.WriteLine("Test1() 方法中的 {0} 结束执行,线程Id为:{1}", state, GetThreadId());
    }, "task2");

    Console.WriteLine("Test1() 方法结束执行,线程Id为:{0}", GetThreadId());
}
</pre>
</div>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="426" height="156" data-src="https://img-blog.csdnimg.cn/2019082017183851.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">当异步方法中有多个 await 时,会依次执行所有的 Task,只有当所有 Task 执行完成后才表示异步方法执行完成,当前线程才得以执行。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">2. 同样以前面(模拟去买盐)的示例,如果发现其实家里还有盐,这是就要告诉我不用买了(取消异步操作),怎么实现?这就要借助 System.Threading.CancellationTokenSource 和 System.Threading.Tasks.CancellationToken 对象来完成。</p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">/// &lt;summary&gt;
/// 做饭(买盐任务取消)
/// &lt;/summary&gt;
public void CookDinner_CancelBuySalt()
{
    Console.WriteLine("老婆开始做饭,线程Id为:{0}", GetThreadId());
    Console.WriteLine("哎呀,没盐了");
    CancellationTokenSource source = new CancellationTokenSource();
    Task&lt;string&gt; task = CommandBuySalt_CancelBuySalt(source.Token);
    Console.WriteLine("不管他继续炒菜,线程Id为:{0}", GetThreadId());
    Thread.Sleep(100);

    string result = "家里的盐";
    if (!string.IsNullOrEmpty(result))
    {
      source.Cancel();    //传达取消请求
      Console.WriteLine("家里还有盐不用买啦,线程Id为:{0}", GetThreadId());
    }
    else
    {
      //如果已取消就不能再获得结果了(否则将抛出 System.Threading.Tasks.TaskCanceledException 异常)
      //你都叫我不要买了,我拿什么给你?
      result = task.Result;
    }

    Console.WriteLine("既然有盐我就继续炒菜【{0}】,线程Id为:{1}", result, GetThreadId());
    Console.WriteLine("老婆把饭做好了,线程Id为:{0}", GetThreadId());
    Console.WriteLine("最终的任务状态是:{0},已完成:{1},已取消:{2},已失败:{3}",
      task.Status, task.IsCompleted, task.IsCanceled, task.IsFaulted);
}

/// &lt;summary&gt;
/// 通知我去买盐(又告诉我不用买了)
/// &lt;/summary&gt;
public async Task&lt;string&gt; CommandBuySalt_CancelBuySalt(CancellationToken token)
{
    Console.WriteLine("这时我准备去买盐了,线程Id为:{0}", GetThreadId());

    //已开始执行的任务不能被取消
    string result = await Task.Run(() =&gt;
    {
      Console.WriteLine("屁颠屁颠的去买盐,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
    }, token).ContinueWith((t) =&gt;//若没有取消就继续执行
    {
      Console.WriteLine("盐已经买好了,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);

      return "盐买回来了,顺便我还买了一包烟";
    }, token);

    Console.WriteLine("{0},线程Id为:{1}", result, GetThreadId());

    return result;
}
</pre>
</div>
<p><span style="color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px">运行以上代码:</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in; color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px" alt="" width="587" height="151" data-src="https://img-blog.csdnimg.cn/20190820171944324.jpg"><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px"><span style="color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px">1) 刚开始我以为调用 source.Cancel() 方法后会立即取消 Task 的执行,仔细一想也不太可能。如果需要在 Task 执行前或者执行期间完成取消操作,我们自己写代码判断 cancellationToken.IsCancellationRequested 属性是否为 true(该属性在调用 source.Cancel() 后或者 source.CancelAfter() 方法到达指定时间后为 true),如果为 true 结束执行即可。</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px"><span style="color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px">2) 这里所说的“传达取消请求”的意思是,每个 Task 在执行之前都会检查 cancellationToken.IsCancellationRequested 属性是否为 true,如果为 true 则不执行 Task,并将设置 Status、IsCompleted、IsCanceled 等。</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px"><span style="color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px">3) 所以,在 Task 的源码中有这样一段代码</span></p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">if (cancellationToken.IsCancellationRequested)
{
    // Fast path for an already-canceled cancellationToken
    this.InternalCancel(false);
}
</pre>
</div>
<p><span style="color: rgba(77, 77, 77, 1); font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px">3. 乘热打铁,我们再来看看多个 CancellationTokenSource 取消异步任务,以及注册取消后的回调委托方法,继续以(模拟去买盐)为例:</span></p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;">/// &lt;summary&gt;
/// 做饭(多个消息传达买盐任务取消)
/// &lt;/summary&gt;
public void CookDinner_MultiCancelBuySalt()
{
    Console.WriteLine("老婆开始做饭,线程Id为:{0}", GetThreadId());
    Console.WriteLine("哎呀,没盐了");
    CancellationTokenSource source1 = new CancellationTokenSource();    //因为存在而取消
    CancellationTokenSource source2 = new CancellationTokenSource();    //因为放弃而取消

    CancellationTokenSource source = CancellationTokenSource.CreateLinkedTokenSource(source1.Token, source2.Token);

    //注册取消时的回调委托
    source1.Token.Register(() =&gt;
    {
      Console.WriteLine("这是因为{0}所以取消,线程Id为:{1}", "家里还有盐", GetThreadId());
    });

    source2.Token.Register((state) =&gt;
    {
      Console.WriteLine("这是因为{0}所以取消,线程Id为:{1}", state, GetThreadId());
    }, "不做了出去吃");

    source.Token.Register((state) =&gt;
    {
      Console.WriteLine("这是因为{0}所以取消,线程Id为:{1}", state, GetThreadId());
    }, "没理由");

    //这里必须传递 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象
    Task&lt;string&gt; task = CommandBuySalt_MultiCancelBuySalt(source.Token);

    Console.WriteLine("等等,好像不用买了,线程Id为:{0}", GetThreadId());
    Thread.Sleep(100);

    string[] results = new string[] { "家里的盐", "不做了出去吃", "没理由" };
    Random r = new Random();
    switch (r.Next(1, 4))
    {
      case 1:
            source1.Cancel();         //传达取消请求(家里有盐)
            //source1.CancelAfter(3000);//3s后才调用取消的回调方法
            Console.WriteLine("既然有盐我就继续炒菜【{0}】,线程Id为:{1}", results, GetThreadId());
            break;
      case 2:
            source2.Cancel();         //传达取消请求(不做了出去吃)
            //source2.CancelAfter(3000);//3s后才调用取消的回调方法
            Console.WriteLine("我们出去吃不用买啦【{0}】,线程Id为:{1}", results, GetThreadId());
            break;
      case 3:
            source.Cancel();            //传达取消请求(没理由)
            //source.CancelAfter(3000);   //3s后才调用取消的回调方法
            Console.WriteLine("没理由就是不用买啦【{0}】,线程Id为:{1}", results, GetThreadId());
            break;
    }

    Console.WriteLine("最终的任务状态是:{0},已完成:{1},已取消:{2},已失败:{3}",
      task.Status, task.IsCompleted, task.IsCanceled, task.IsFaulted);
}

/// &lt;summary&gt;
/// 通知我去买盐(又告诉我不用买了,各种理由)
/// &lt;/summary&gt;
public async Task&lt;string&gt; CommandBuySalt_MultiCancelBuySalt(CancellationToken token)
{
    Console.WriteLine("这时我准备去买盐了,线程Id为:{0}", GetThreadId());

    //已开始执行的任务不能被取消
    string result = await Task.Run(() =&gt;
    {
      Console.WriteLine("屁颠屁颠的去买盐,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
    }, token).ContinueWith((t) =&gt;//若没有取消就继续执行
    {
      Console.WriteLine("盐已经买好了,线程Id为:{0}", GetThreadId());
      Thread.Sleep(1000);
      return "盐买回来了,顺便我还买了一包烟";
    }, token);

    Console.WriteLine("{0},线程Id为:{1}", result, GetThreadId());

    return result;
}
</pre>
</div>
<div id="article_content" class="article_content clearfix" style="box-sizing: inherit; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">
<div id="content_views" class="htmledit_views" style="box-sizing: inherit; outline: 0; margin: 0; padding: 0; font-family: -apple-system, &quot;SF UI Text&quot;, Arial, &quot;PingFang SC&quot;, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, &quot;WenQuanYi Micro Hei&quot;, sans-serif, SimHei, SimSun; overflow-wrap: break-word; position: relative; min-height: 70px">
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="602" height="161" data-src="https://img-blog.csdnimg.cn/20190820172107367.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) &nbsp; 当调用 source.Cancel() 方法后,会立即取消并调用 token 注册的回调方法;而调用 existSource.CancelAfter() 方法则会等到达指定的毫秒数后才会取消。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) &nbsp; 注意:传递给异步方法的 token 对象,必须是 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象,否则取消将无效。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">3) &nbsp; 回调的委托方法始终只有两个,一个是 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象的注册委托,另一个是调用 Cancel()/CancelAfter() 方法的 Token 对象的注册委托。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">4) &nbsp; 如果以上代码调用的是 CancelAfter(3000) 方法,运行结果如下:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="705" height="186" data-src="https://img-blog.csdnimg.cn/20190820172227314.jpg"></p>

</div>

</div>
<div class="article-source-link" style="box-sizing: inherit; outline: 0; margin: 4px 0 12px; padding: 0; overflow-wrap: break-word; font-size: 12px; color: rgba(107, 107, 107, 1); line-height: 18px; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif">原文链接:https://www.cnblogs.com/abeam/p/11227935.html</div>
<div id="content_views" class="htmledit_views" style="box-sizing: inherit; outline: 0; margin: 0; padding: 0; font-family: -apple-system, &quot;SF UI Text&quot;, Arial, &quot;PingFang SC&quot;, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, &quot;WenQuanYi Micro Hei&quot;, sans-serif, SimHei, SimSun; overflow-wrap: break-word; position: relative; min-height: 70px; color: rgba(51, 51, 51, 1)">
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">前言</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">C#异步编程有几种实现方式,异步方法就是其中的一种。异步方法是 C#5.0 才有的新特性,主要采用 async、await 关键字声明为异步方法,完成对方法的异步调用。C#5.0 对应的 VS 版本是 VS2012,对应的 .NET Framework 版本是 v4.5,所以需要在此基础上才支持。(否则可能报:找不到“async”修饰符所需的所有类型。目标框架版本是否不正确,或者缺少对程序集的引用?)</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">什么是异步方法</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1. 异步方法,是指在执行当前方法的同时,可以异步的去调用其他方法(异步方法),并且不会阻塞当前方法的线程。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2. 使用了 async 修饰符的方法称为异步方法,通常配合 await 运算符和 Task 异步任务一起使用。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) 如果方法使用了 async 修饰符,则方法中需要包含一个以上 await 运算符,否则将以同步执行。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 反之,如果方法中包含一个以上 await 运算符,则必须声明为一个异步方法,即使用 async 修饰符。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">3. Task 分为两种:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) Task,表示可以执行一个异步操作,声明如下:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">public class Task : IAsyncResult, IDisposable { }<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) Task&lt;TResult&gt;,表示可以执行带有返回值的异步操作,声明如下:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">public class Task&lt;TResult&gt; : Task { }</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">4. 异步方法的返回类型必须为 void、Task、Task&lt;TResult&gt; 中的其中一种。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) void,表示无返回值,不关心异步方法执行后的结果,一般用于仅仅执行某一项任务,但是不关心结果的场景。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) Task,表示异步方法将返回一个 Task 对象,该对象通常用于判断异步任务是否已经完成,可以使用 taskObj.Wait() 方法等待,或者 taskObj.IsCompleted 判断。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">3) Task&lt;TResult&gt;,表示异步方法将返回一个 Task&lt;TResult&gt; 对象,该对象的 Result 属性则是异步方法的执行结果,调用该属性时将阻塞当前线程(异步方法未执行完成时)。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">归纳一下:void 不关心结果;Task 只关心是否执行完成;Task&lt;TResult&gt; 不止关心是否执行完成,还要获取执行结果。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">下面通过几个生活中比较形象的例子来理解异步方法的使用<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">1. 模拟扔垃圾(不关心结果,返回 void 类型)</span></p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 扔垃圾</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">DropLitter</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆开始打扫房间,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"垃圾满了,快去扔垃圾"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;CommandDropLitter();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"不管他继续打扫,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆把房间打扫好了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 通知我去扔垃圾</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CommandDropLitter</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这时我准备去扔垃圾,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Run(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"屁颠屁颠的去扔垃圾,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;});</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"垃圾扔了还有啥吩咐,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="373" height="120" data-src="https://img-blog.csdnimg.cn/20190820171339331.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">以上代码在 CommandDropLitter() 方法上加了 async 修饰符,并且使用 await 运算符开启了一个新的 Task 去执行另一个任务。注意:当前线程遇到 await 时,则立刻跳回调用方法继续往下执行。而 Task 执行完成之后将执行 await 之后的代码,并且与 await 之前的线程不是同一个。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">2.模拟打开电源开关(关心是否执行完成,返回 Task 类型)</span></p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 打开电源开关</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">OpenMainsSwitch</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"我和老婆正在看电视,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"突然停电了,快去看下是不是跳闸了"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Task task = CommandOpenMainsSwitch();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"没电了先玩会儿手机吧,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"手机也没电了只等电源打开,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//task.Wait(); &nbsp; &nbsp;//所以这里将被阻塞,直到任务完成</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//或者</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">while</span> (!task.IsCompleted) { Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>); }</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"又有电了我们继续看电视,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 通知我去打开电源开关</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> Task <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CommandOpenMainsSwitch</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这时我准备去打开电源开关,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Run(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"屁颠屁颠的去打开电源开关,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;});</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"电源开关打开了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="397" height="134" data-src="https://img-blog.csdnimg.cn/201908201715276.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) 可见,调用 Wait() 方法后,当前线程被阻塞了,直到 Task 执行完成后,当前线程才继续执行。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 注意:由于 CommandOpenMainsSwitch() 是一个异步方法,虽然返回类型为 Task 类型,但是在我们代码中并没有写(也不能写) return task 语句,这是为什么呢?可能是这种返回类型比较特殊,或者编译器自动帮我们完成了吧!就算写也只能写 return 语句,后面不能跟对象表达式。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; color: rgba(51, 153, 234, 1)">3. 模拟去买盐(不止关心是否执行完成,还要获取执行结果。返回 Task&lt;TResult&gt; 类型)</span></p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 做饭</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CookDinner</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆开始做饭,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"哎呀,没盐了"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; task = CommandBuySalt();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"不管他继续炒菜,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span> result = task.Result; &nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//必须要用盐了,等我把盐回来(停止炒菜(阻塞线程))</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"用了盐炒的菜就是好吃【{0}】,线程Id为:{1}"</span>, result, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆把饭做好了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 通知我去买盐</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CommandBuySalt</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这时我准备去买盐了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span> result = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Run(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"屁颠屁颠的去买盐,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"盐买回来了,顺便我还买了一包烟"</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;});</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"{0},线程Id为:{1}"</span>, result, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> result;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="551" height="135" data-src="https://img-blog.csdnimg.cn/2019082017165389.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) 以上代码 task.Result 会阻塞当前线程,与 task.Wait() 类似。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 注意:与前面返回类型为 Task 的 CommandOpenMainsSwitch() 方法一样,虽然 CommandBuySalt() 方法返回类型为 Task&lt;string&gt;,但是我们的返回语句是 return 字符串。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><span style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; font-weight: bold; overflow-wrap: break-word">其他示例</span><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1. 在前面(模拟去买盐)的示例中,异步方法中只开启了一个 Task,如果开启多个 Task 又是什么情况,看代码:</p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">AsyncTest</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"AsyncTest() 方法开始执行,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Task task = Test1();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"AsyncTest() 方法继续执行,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;task.Wait();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"AsyncTest() 方法结束执行,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> Task <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">Test1</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法开始执行,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Factory.StartNew((state) =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法中的 {0} 开始执行,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法中的 {0} 结束执行,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"task1"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Factory.StartNew((state) =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法中的 {0} 开始执行,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">3000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法中的 {0} 结束执行,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"task2"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"Test1() 方法结束执行,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="426" height="156" data-src="https://img-blog.csdnimg.cn/2019082017183851.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">当异步方法中有多个 await 时,会依次执行所有的 Task,只有当所有 Task 执行完成后才表示异步方法执行完成,当前线程才得以执行。</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">2. 同样以前面(模拟去买盐)的示例,如果发现其实家里还有盐,这是就要告诉我不用买了(取消异步操作),怎么实现?这就要借助 System.Threading.CancellationTokenSource 和 System.Threading.Tasks.CancellationToken 对象来完成。</p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 做饭(买盐任务取消)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CookDinner_CancelBuySalt</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆开始做饭,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"哎呀,没盐了"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;CancellationTokenSource source = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">new</span> CancellationTokenSource();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; task = CommandBuySalt_CancelBuySalt(source.Token);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"不管他继续炒菜,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span> result = <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"家里的盐"</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">if</span> (!<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>.IsNullOrEmpty(result))</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;source.Cancel(); &nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//传达取消请求</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"家里还有盐不用买啦,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">else</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//如果已取消就不能再获得结果了(否则将抛出 System.Threading.Tasks.TaskCanceledException 异常)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//你都叫我不要买了,我拿什么给你?</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;result = task.Result;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"既然有盐我就继续炒菜【{0}】,线程Id为:{1}"</span>, result, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆把饭做好了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"最终的任务状态是:{0},已完成:{1},已取消:{2},已失败:{3}"</span>,</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;task.Status, task.IsCompleted, task.IsCanceled, task.IsFaulted);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 通知我去买盐(又告诉我不用买了)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CommandBuySalt_CancelBuySalt</span>(<span class="hljs-params" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">CancellationToken token</span>)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这时我准备去买盐了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//已开始执行的任务不能被取消</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span> result = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Run(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"屁颠屁颠的去买盐,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, token).ContinueWith((t) =&gt; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//若没有取消就继续执行</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"盐已经买好了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"盐买回来了,顺便我还买了一包烟"</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, token);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"{0},线程Id为:{1}"</span>, result, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> result;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="587" height="151" data-src="https://img-blog.csdnimg.cn/20190820171944324.jpg"><br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">1) 刚开始我以为调用 source.Cancel() 方法后会立即取消 Task 的执行,仔细一想也不太可能。如果需要在 Task 执行前或者执行期间完成取消操作,我们自己写代码判断 cancellationToken.IsCancellationRequested 属性是否为 true(该属性在调用 source.Cancel() 后或者 source.CancelAfter() 方法到达指定时间后为 true),如果为 true 结束执行即可。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) 这里所说的“传达取消请求”的意思是,每个 Task 在执行之前都会检查 cancellationToken.IsCancellationRequested 属性是否为 true,如果为 true 则不执行 Task,并将设置 Status、IsCompleted、IsCanceled 等。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">3) 所以,在 Task 的源码中有这样一段代码</p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">if</span> (cancellationToken.IsCancellationRequested)</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp; &nbsp; <span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">// Fast path for an already-canceled cancellationToken</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp; &nbsp; <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">this</span>.InternalCancel(<span class="hljs-literal" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(1, 132, 187, 1); overflow-wrap: break-word">false</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">3. 乘热打铁,我们再来看看多个 CancellationTokenSource 取消异步任务,以及注册取消后的回调委托方法,继续以(模拟去买盐)为例:</p>
<ol class="hljs-ln" style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding: 0; list-style: none; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; border-collapse: collapse; font-size: 16px; overflow: hidden; overflow-wrap: break-word; width: 959px">
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 做饭(多个消息传达买盐任务取消)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">void</span> <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CookDinner_MultiCancelBuySalt</span>()</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"老婆开始做饭,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"哎呀,没盐了"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;CancellationTokenSource source1 = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">new</span> CancellationTokenSource(); &nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//因为存在而取消</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;CancellationTokenSource source2 = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">new</span> CancellationTokenSource(); &nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//因为放弃而取消</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;CancellationTokenSource source = CancellationTokenSource.CreateLinkedTokenSource(source1.Token, source2.Token);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//注册取消时的回调委托</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;source1.Token.Register(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这是因为{0}所以取消,线程Id为:{1}"</span>, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"家里还有盐"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;});</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;source2.Token.Register((state) =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这是因为{0}所以取消,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"不做了出去吃"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;source.Token.Register((state) =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这是因为{0}所以取消,线程Id为:{1}"</span>, state, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"没理由"</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//这里必须传递 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; task = CommandBuySalt_MultiCancelBuySalt(source.Token);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"等等,好像不用买了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">100</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>[] results = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">new</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>[] { <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"家里的盐"</span>, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"不做了出去吃"</span>, <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"没理由"</span> };</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Random r = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">new</span> Random();</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">switch</span> (r.Next(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1</span>, <span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">4</span>))</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">case</span> <span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1</span>:</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;source1.Cancel(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//传达取消请求(家里有盐)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//source1.CancelAfter(3000); &nbsp;//3s后才调用取消的回调方法</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"既然有盐我就继续炒菜【{0}】,线程Id为:{1}"</span>, results[<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">0</span>], GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">break</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">case</span> <span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">2</span>:</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;source2.Cancel(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//传达取消请求(不做了出去吃)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//source2.CancelAfter(3000); &nbsp;//3s后才调用取消的回调方法</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"我们出去吃不用买啦【{0}】,线程Id为:{1}"</span>, results[<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1</span>], GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">break</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">case</span> <span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">3</span>:</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;source.Cancel(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//传达取消请求(没理由)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//source.CancelAfter(3000); &nbsp; //3s后才调用取消的回调方法</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"没理由就是不用买啦【{0}】,线程Id为:{1}"</span>, results[<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">2</span>], GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">break</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"最终的任务状态是:{0},已完成:{1},已取消:{2},已失败:{3}"</span>,</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;task.Status, task.IsCompleted, task.IsCanceled, task.IsFaulted);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> 通知我去买盐(又告诉我不用买了,各种理由)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word"><span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">///</span> <span class="hljs-doctag" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">&lt;/summary&gt;</span></span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-function" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word"><span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">public</span> <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">async</span> Task&lt;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span>&gt; <span class="hljs-title" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(64, 120, 242, 1); overflow-wrap: break-word">CommandBuySalt_MultiCancelBuySalt</span>(<span class="hljs-params" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">CancellationToken token</span>)</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"这时我准备去买盐了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//已开始执行的任务不能被取消</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">string</span> result = <span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">await</span> Task.Run(() =&gt;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"屁颠屁颠的去买盐,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, token).ContinueWith((t) =&gt; &nbsp;<span class="hljs-comment" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(160, 161, 167, 1); font-style: italic; overflow-wrap: break-word">//若没有取消就继续执行</span></div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;{</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"盐已经买好了,线程Id为:{0}"</span>, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Thread.Sleep(<span class="hljs-number" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(152, 104, 1, 1); overflow-wrap: break-word">1000</span>);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> <span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"盐买回来了,顺便我还买了一包烟"</span>;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;}, token);</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;Console.WriteLine(<span class="hljs-string" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(80, 161, 79, 1); overflow-wrap: break-word">"{0},线程Id为:{1}"</span>, result, GetThreadId());</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">&nbsp;</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">&nbsp;&nbsp; &nbsp;<span class="hljs-keyword" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; color: rgba(166, 38, 164, 1); overflow-wrap: break-word">return</span> result;</div>

</div>

</li>
<li style="box-sizing: border-box; outline: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-top: 0; padding-right: 0; padding-bottom: 0; list-style-type: none; overflow-wrap: break-word; height: 22px">
<div class="hljs-ln-numbers" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px; width: 24px; border-right: 1px solid rgba(197, 197, 197, 1)">&nbsp;</div>
<div class="hljs-ln-code" style="box-sizing: border-box; outline: 0; margin: 0 0 0 8px; padding: 0; overflow-wrap: break-word; font-family: &quot;Source Code Pro&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Ubuntu Mono&quot;, &quot;Anonymous Pro&quot;, &quot;Droid Sans Mono&quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, sans-serif; font-size: 14px; float: left; height: 22px">
<div class="hljs-ln-line" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">}</div>

</div>

</li>

</ol>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">运行以上代码:</p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word"><img class="has lazyload" style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; max-width: 100%; overflow-wrap: break-word; cursor: zoom-in" alt="" width="602" height="161" data-src="https://img-blog.csdnimg.cn/20190820172107367.jpg"></p>
<p style="box-sizing: border-box; outline: 0; margin: 0 0 16px; padding: 0; font-family: &quot;Microsoft YaHei&quot;, &quot;SF Pro Display&quot;, Roboto, Noto, Arial, &quot;PingFang SC&quot;, sans-serif; font-size: 16px; color: rgba(77, 77, 77, 1); line-height: 26px; overflow-x: auto; overflow-wrap: break-word">1) &nbsp; 当调用 source.Cancel() 方法后,会立即取消并调用 token 注册的回调方法;而调用 existSource.CancelAfter() 方法则会等到达指定的毫秒数后才会取消。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">2) &nbsp; 注意:传递给异步方法的 token 对象,必须是 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象,否则取消将无效。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">3) &nbsp; 回调的委托方法始终只有两个,一个是 CancellationTokenSource.CreateLinkedTokenSource() 方法返回的 Token 对象的注册委托,另一个是调用 Cancel()/CancelAfter() 方法的 Token 对象的注册委托。<br style="box-sizing: border-box; outline: 0; margin: 0; padding: 0; overflow-wrap: break-word">4) &nbsp; 如果以上代码调用的是 CancelAfter(3000) 方法,运行结果如下:</p>

</div><br><br>
来源:https://www.cnblogs.com/wcrBlog/p/11690460.html
頁: [1]
查看完整版本: c# 异步编程