"Thread was being aborted" 执行 Hangfire 作业时出现异常

"Thread was being aborted" exception raised in excuting Hangfire job

我有一个 Hangfire(使用 SqlServer 进行持久化)作业,它从数据库中查询一些数据。然后用这些数据生成一个带有NPOI的Excel,并通过Email发送给用户。

数据不大,大概1000行。所以作业在几秒钟内执行。但是,在生成 Excel 或发送邮件时出现 "Thread was being aborted" 异常。

我想有类似超时的东西,它会杀死线程。 有没有人有同样的问题?有什么解决办法吗?

好的。其实我在这里犯了一个愚蠢的错误。 在生成 Excel 之前,我有一个模板。模板将首先复制到 HttpRuntime.BinDirectory(我试图避免资源冲突)。 这 HttpRuntime.BinDirectory 是导致线程中止的根本原因。

当网站bin文件夹有任何变化时,IIS会更新AppDomain(或ApplicationPool?)。这将中止当前 运行 个线程。