<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      async/await 與console(C#)

      問題:

      上一篇async/await 致WPF卡死問題(http://www.rzrgm.cn/stephen2023/p/17725159.html),介紹主線程阻塞,async/await導致卡死問題,同樣的代碼在console下卻并不會出現卡死。

              static Stopwatch sw = new Stopwatch();
      
              static void log(string message)
              {
                  Console.WriteLine($"{sw.ElapsedMilliseconds}:{message} by Thread:{Thread.CurrentThread.ManagedThreadId}");
              }
      
              static void Main(string[] args)
              {
                  sw.Start();
                  log("Main() Started!");
                  var t = getResult().Result;
                  log($"got result:{t}");
                  log("Main() is Ended!");
                  Console.ReadKey();
      
              }
      
              public static async Task<int> getResult()
              {
                  await Task.Delay(1000);
              log("get result is about to return");
                  return 10;
              }

      并且await后的任務也是由“新線程”執行的,并非主線程執行。

      分析:

      對于如下含await的代碼

      await FooAsync();
      RestOfMethod();

      可以類比于:

      var t = FooAsync();
      var currentContext = SynchronizationContext.Current;
      t.ContinueWith(delegate
      {
          if (currentContext == null)
              RestOfMethod();
          else
              currentContext.Post(delegate { RestOfMethod(); }, null);
      }, TaskScheduler.Current);

      WPF與Console不同的關鍵在于SynchronizationContext,對于WPF,繼承了SynchronizationContextDispatcherSynchronizationContext 并重寫了post方法,將委托任務交由UI線程處理,而console程序并沒有,當前的SynchronizationContext為null,所以對于console程序await后續的任務任由執行await異步任務的線程執行,相當于上一篇的ConfigureAwait(false),主線程阻塞,并不會出現卡死現象。

       

       

       

      posted @ 2023-09-24 22:41  robot2017  閱讀(250)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品午夜av福利| 亚洲欧美偷拍另类A∨| 中国女人和老外的毛片| 在线日韩日本国产亚洲| av在线播放无码线| 太深太粗太爽太猛了视频| 周至县| 深夜av在线免费观看| 久久亚洲精品中文字幕馆| 精品熟女少妇免费久久| 久热这里只有精品12| 国产拗精品一区二区三区| 亚洲国产99精品国自产拍| 一区二区三区国产偷拍| 国产寡妇偷人在线观看| 国产亚洲精品午夜福利| 熟女熟妇伦av网站| 国产亚洲一区二区三区成人| 虎白女粉嫩尤物福利视频| 国产一区二区三区AV在线无码观看| 99久久婷婷国产综合精品青草漫画| 亚洲av午夜福利大精品| 插插射啊爱视频日a级| 综合色一色综合久久网| 国产成人精品午夜在线观看 | 视频一区视频二区制服丝袜| 国产午夜福利短视频| 亚洲www永久成人网站| 亚洲精品麻豆一区二区| 国产精品免费看久久久无码| 亚洲第一狼人天堂网伊人| 不卡国产一区二区三区| 成 人色 网 站 欧美大片在线观看| 久久国产自偷自偷免费一区 | 山阳县| 他掀开裙子把舌头伸进去添视频| 爱性久久久久久久久| 太原市| 干老熟女干老穴干老女人| 精品剧情V国产在线观看| 河间市|