3
當冒泡異步時,給定一個方法,其唯一目的是調用具有特定參數的另一個異步方法,以下哪一個是接受/首選模式,爲什麼?異步直通方法
async Task MyMethodAsync() => await MyOtherMethodAsync(1);
或
Task MyMethodAsync() => MyOtherMethodAsync(1);
當冒泡異步時,給定一個方法,其唯一目的是調用具有特定參數的另一個異步方法,以下哪一個是接受/首選模式,爲什麼?異步直通方法
async Task MyMethodAsync() => await MyOtherMethodAsync(1);
或
Task MyMethodAsync() => MyOtherMethodAsync(1);
我寧願:
Task MyMethodAsync() => MyOtherMethodAsync(1);
使用async
和await
實際上增加了不少開銷,以建立一個完整的狀態機,其中第二隻是一個簡單的方法調用。
如果您想添加異常處理,並且將堆棧跟蹤作爲本地方法或記錄異常,那麼使方法async
本身具有唯一潛在優勢。
更喜歡後者,它不設置了一個額外的async
狀態機僅做與它無關。