gpt4 book ai didi

c# - 重新抛出异常未被捕获

转载 作者:行者123 更新时间:2023-11-30 23:26:44 26 4
gpt4 key购买 nike

我有一个在后台运行任务的扩展方法,我将它放在一个 try-catch block 中以处理它抛出的任何异常。问题是 visual studio 总是在我的代码的重新抛出部分停止,我不确定为什么。

try {
task.RunInBackground();
} catch (Exception e) {
// do something
}

enter image description here

最佳答案

您需要像这样等待任务:

try {
await task.RunInBackground();
} catch (Exception e) {
// do something
}

尽可能避免使用 async void。将 async void 替换为 async Task ,如下所示:

public static async Task RunInBackground(this Task task) {
// ....
}

如果您需要知道为什么要避免 async void,请检查此 link来自 msdn。

关于c# - 重新抛出异常未被捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36803928/

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