jquery同步和異步的區別,.net async/await 異步等待的數種情況

 2023-11-18 阅读 28 评论 0

摘要:.net 4.5 中增加了async/await,使寫異步代碼能像寫同步代碼那樣,甚至偽同步執行,真是個非常好用的東西。不過,有時候我們會希望這些異步代碼能偽同步執行,有時候又希望能真異步執行。所以async/await有很多種搭配來實現這些功能,總

.net 4.5 中增加了async/await,使寫異步代碼能像寫同步代碼那樣,甚至偽同步執行,真是個非常好用的東西。不過,有時候我們會希望這些異步代碼能偽同步執行,有時候又希望能真異步執行。所以async/await有很多種搭配來實現這些功能,總共有3種搭配。

?

jquery同步和異步的區別,代碼:

        private static async void test(){ff0();await ff1();ff2();}private static async void ff0(){await Task.Run(() =>{Thread.Sleep(1000);Console.WriteLine("Welcome to ff0");});Console.WriteLine("Leave ff0");}private static async Task ff1(){await Task.Run(() =>{Thread.Sleep(1000);Console.WriteLine("Welcome to ff1");});Console.WriteLine("Leave ff1");}private static void ff2(){Task task = Task.Run(() =>{Thread.Sleep(1000);Console.WriteLine("Welcome to ff2");});Console.WriteLine("Leave ff2");}

?


結果:

defer async、Welcome to ff0

Welcome to ff1

Leave ff0

handler異步消息。 Leave ff1

Leave ff2

Welcome to ff2

java異步請求。?

結論:

1.并沒有等待ff0運行完成才運行ff1,但是ff0方法內部是偽同步執行的,也就是說如果你想讓方法內偽同步執行而外面異步執行的話就像ff0那樣寫。

java異步返回結果。2.ff2的運行是等待ff1運行完成之后才運行的,也就是說如果你想讓方法內外都偽同步執行的話就像ff1那樣寫。

3.在ff2中代碼完全沒有順序運行,也就是說如果你想讓代碼異步執行的話就像ff2那樣寫。

?

異步。轉載于:https://www.cnblogs.com/rainstorm/archive/2013/05/20/3088661.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/175548.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息