【问题标题】:Error callback for a Task type in C# [duplicate]C#中任务类型的错误回调[重复]
【发布时间】:2015-12-05 02:53:06
【问题描述】:

我想知道 C# 中 Task 的错误回调是什么。

例如:在 JavaScript 中,您有两个回调函数。

obj.save().then(function(){
   //success
}, function(){
   //error
});

C# 中的 async/await 是什么概念。

Task task = obj.SaveAsync();

Task 中的错误回调在哪里?

P.S:我正在从 JavaScript 迁移到 C#。

【问题讨论】:

    标签: c# async-await


    【解决方案1】:

    嗯,有多种选择:

    • 您可以使用Task.ContinueWith,使用TaskContinuationOptions.OnlyOnFaulted 指定错误回调
    • 您可以等待任务并捕获将相应解包的异常:

      try
      {
          await obj.SaveAsync();
      }
      catch (BadStuffHappenedException e)
      {
          // ...
      }
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-19
      • 1970-01-01
      • 1970-01-01
      • 2012-09-25
      • 2017-03-19
      • 2018-09-26
      • 2021-10-09
      • 1970-01-01
      相关资源
      最近更新 更多