【发布时间】:2024-04-16 13:25:02
【问题描述】:
下面一行...
var isAuthorized = (await _authorizationService.AuthorizeAsync(...)).Succeeded;
...导致异步执行与调用者不同,直到找到AuthorizeAsync(...) 的结果,还是会阻塞线程直到找到结果?为什么或为什么不?
根据this question for vb.net,这样的表达式被称为非文字。根据Fluently Calling Await without Parentheses 和How to Design Fluent Async Operations 的问题和回答,这个说法似乎很好。但是,我想确定一下,并从使这种特殊情况清楚的文档中知道为什么。
【问题讨论】:
-
async 通常意味着它不会阻塞线程。
-
@DanielA.White 100% 同意。只是想确保这不是一个奇怪的边缘情况。
标签: c# async-await