Apakah ada setiap skenario di mana menulis metode seperti ini:
public async Task<SomeResult> DoSomethingAsync()
{
// Some synchronous code might or might not be here... //
return await DoAnotherThingAsync();
}
alih-alih ini:
public Task<SomeResult> DoSomethingAsync()
{
// Some synchronous code might or might not be here... //
return DoAnotherThingAsync();
}
akan masuk akal?
Mengapa menggunakan return awaitkonstruk ketika Anda dapat langsung kembali Task<T>dari DoAnotherThingAsync()doa batin ?
Saya melihat kode dengan return awaitdi banyak tempat, saya pikir saya mungkin melewatkan sesuatu. Tapi sejauh yang saya mengerti, tidak menggunakan kata kunci async / menunggu dalam hal ini dan langsung mengembalikan Tugas akan setara secara fungsional. Mengapa menambahkan overhead tambahan dari awaitlapisan tambahan ?