Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在之后没有更多操作的情况下等待任务有意义吗?_C#_Async Await - Fatal编程技术网

C# 在之后没有更多操作的情况下等待任务有意义吗?

C# 在之后没有更多操作的情况下等待任务有意义吗?,c#,async-await,C#,Async Await,假设我们有一个方法: public async Task FlushBuffer(List<UmtsCellKpiReceived> kpis) { await _umtsCellService.ProcessUmtsCellKpi(kpis).ConfigureAwait(false); } 公共异步任务刷新缓冲区(列出KPI) { wait _umtsCellService.ProcessUmtsCellKpi(KPI).configurewait(false); }

假设我们有一个方法:

public async Task FlushBuffer(List<UmtsCellKpiReceived> kpis)
{
    await _umtsCellService.ProcessUmtsCellKpi(kpis).ConfigureAwait(false);
}
公共异步任务刷新缓冲区(列出KPI)
{
wait _umtsCellService.ProcessUmtsCellKpi(KPI).configurewait(false);
}
在这里等待这项任务有意义吗?在最近的一次讨论中,我了解到,如果
MyTask()
抛出,不等待将创建一个孤立的任务,这可能会导致
unobservedtaskeexception


这是等待一切的正当理由吗?

在您的情况下,仅使用一行方法,就可以返回任务本身,不需要异步/等待。调用代码可以等待
任务
本身,如果这样做有意义的话。

只要您直接返回任务,则不会。使用
wait
的唯一原因是您想对结果做些什么。如果您不只是将任务返回给调用者。@PanagiotisKanavos是对的。我没有正确阅读您的代码。@Cemre,请转到此链接,您将看到关于此主题异常处理任务的答案。希望这有帮助!!!那么在这种情况下,该方法是否需要标记为
async
?我不这么认为,因为
async
关键字的目的本质上是允许使用
wait
关键字。你是对的。您不会将该方法标记为async,事实上,没有任何WAIT语句的async方法将生成警告。