如何避免在hangfire作业中对异步方法的异常进行静默吞咽?

时间:2017-09-06 08:02:46

标签: async-await hangfire

自1.6 Hangfire supports using the await keyword in background tasks以来,

但是,它不是真正的异步支持,它忽略了异步方法抛出的任何异常,这导致失败的作业被视为成功。

E.g。如果我有一个调用{ text: 'Tag1' }, { text: 'Tag2' }, { text: 'Tag3' }

之类的方法的hangfire作业
MyJobMethod()

即使public async Task MyJobMethod() { var foo = await this.bar.SomeMethodThatMayThrowAsync(); } 抛出异常,Hangfire作业也会成功。

如何在Hangfire作业中使用异步方法时确保不会吞下异常?

我应该使用SomeMethodThatMayThrowAsync(),如果是,那么需要注意哪些陷阱?

0 个答案:

没有答案