Task异常捕捉

复制代码
copy
public static Task Catch(this Task task,Action<Exception> callback)
{
return task.ContinueWith<Task>(delegate (Task t)
{
if (t != null && t.IsFaulted)
{
AggregateException exception = t.Exception;
Trace.TraceError("Catch exception thrown by Task: {0}", new object[]
{
exception
}); 
callback(exception.InnerException);
}
return t;
}).Unwrap();
}
复制代码

 

本文作者:Observer_Dep

本文链接:https://www.cnblogs.com/lvzhenHome/p/13711536.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   Observer_Dep  阅读(64)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起