如果要“异步”获取异常,则可以执行以下 *** 作:
MyAsyncMethod(). ContinueWith(t => Console.WriteLine(t.Exception), TaskContinuationOptions.OnlyOnFaulted);
这将使您可以处理“主”线程以外的线程上的异常。这意味着您不必“等待”
MyAsyncMethod()来自调用线程的调用
MyAsyncMethod;但是,仍然允许您执行例外 *** 作-但仅当发生例外时。更新:
从技术上讲,您可以执行以下 *** 作
await:
try{ await MyAsyncMethod().ConfigureAwait(false);}catch (Exception ex){ Trace.WriteLine(ex);}
…如果您需要专门使用
try/
catch(或
using),这将很有用,但我发现它
ContinueWith要明确一些,因为您必须知道什么
ConfigureAwait(false)意思。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)