调用方法一:这边捕获到的异常,不能重新抛出
Task.Factory.StartNew(() =>
{
//业务逻辑
}).ContinueWith(task =>
{
if (task.IsCompleted && !task.IsFaulted)
{
//没有出现异常
}
else
{
//出现异常
var exection = task.Exception;
Log(exection);
}
});
调用方法二:通用的捕获异常
try
{
await Task.Factory.StartNew(() =>
{
//业务逻辑
})
}
catch (Exception ex)
{
_logger.LogError("定时器取消订单挂号异常:" + ex.Message + ",详细信息:" + ex.ToString());
}