【发布时间】:2026-02-17 23:55:01
【问题描述】:
try catch outside: await Task.Run(() => 有意义还是只在 await 内使用它们?
private async void Test()
{
try
{
await Task.Run(() =>
{
try
{
DoingSomething();
}
catch (Exception ex)
{
log.Error(ex.Message);
}
});
}
catch (Exception ex)
{
log.Error(ex.Message);
}
}
【问题讨论】:
-
这完全取决于您如何处理错误。
-
另外,千万不要写
async void。 -
我打算在等待中捕获所有错误,但是在外面添加 Try Catch 是否更安全?
-
@SLaks
async void有什么问题(或者它与任何其他 void 方法有何不同)? -
@user2864740: msdn.microsoft.com/en-us/magazine/jj991977.aspx
标签: c# .net try-catch async-await