gpt4 book ai didi

c# - 为什么等待这个错误任务不抛出异常?

转载 作者:行者123 更新时间:2023-12-05 02:53:05 24 4
gpt4 key购买 nike

<分区>

以为我已经了解了async 方法和WhenAll/WhenAny 行为中的异常当任务抛出异常时,但是:

internal async Task RunAsync()
{
//...

//one of persistenceTask, monitorsTask is going to throw an exeption
var completedTask = Task.WhenAny(persistenceTask, monitorsTask);

await completedTask; //I expect this to throw but it doesn't
}

.

//in a calling method later
var t = await RunAsync();

completedTask 状态为错误时,我可以在调试器中看到内部异常,但 t 最终成功完成。我想要的是 RunAsync 抛出的异常 - 我知道 WhenAny 在任务出错时不会抛出,但我认为如果我 await 执行错误任务 (completedTask),这抛出。

我哪里错了?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com