淺談async、await關鍵字 => 深談async、await關鍵字

前言

之前寫過有關異步的文章,對這方面一直比較弱,感覺還是不太理解,于是會花點時間去好好學習這一塊,我們由淺入深,文中若有敘述不穩(wěn)妥之處,還請批評指正。

話題

(1)是不是將方法用async關鍵字標識就是異步方法了呢?

(2)是不是沒有await關鍵字的存在async就沒有存在的意義了呢?

(3)用異步方法的條件是什么呢,為什么會有這個條件限制?

(4)只能調用.NET Framework內置的用await標識的Task,能否自定義實現(xiàn)呢?

(5)在lambda表達式中是否可以用async和await關鍵字來實現(xiàn)異步呢(即異步lambda表達式)?

上述拋出這幾個話題,明白本文主要講述的話題以及需要深入了解的知識。

注意:這里我將參照園友【反骨仔的文章進行進一步解析。

async關鍵字

例如異步方法是這樣的:

復制代碼
        public static async Task<int> asyncMethod()
        { return await Task.Run(() => Calculate());
       
        
		

網(wǎng)友評論