【发布时间】:2023-04-06 07:35:01
【问题描述】:
假设您有一个服务 API 调用。被调用者在某种程度上对性能至关重要,因此为了不让 API 调用超过必要的时间,使用了 SaveAsync() 方法。但是,我不能 await 它,因为这会使 API 调用与非异步版本一样长(甚至可能更长)。
我要问的原因是:如果你不await 调用,返回的Task 对象是否有可能被垃圾回收?如果是这样,那会中断正在运行的任务吗?
【问题讨论】:
-
你能在哪里等待这个方法吗?
-
你确定 await 会持有 API 吗?据我所知,等待点将存储在空间块中,当结果出来时,CLR 会处理你的等待部分代码
标签: c# .net asynchronous async-await task-parallel-library