[英]Where does an async method execute in ASP.NET (MVC)?
在此上下文中async
的主要用途是等待外部資源 - 例如,數據庫(sql或no-sql),Web API(http)等。這些都不需要線程,因為它們不是基於CPU的操作。 數據可用后,工作將在某個時間點恢復。 考慮:
var cust = await someApi.GetCustomerAsync();
var account = await anotherApi.GetAccount(cust.AccountId);
return View(account);
await
此處表示進程外工作 - 通常是網絡。 它們不會“運行”任何地方,因為它們不是CPU操作。 當占位任務報告完成, 則該方法的下一部分可以恢復,通常通過所捕獲的同步上下文。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.