如何查找计划任务挂起的原因?

如何查找计划任务挂起的原因?

我在 Windows 7 中安排了相当多的任务,在我的计算机上执行了各种各样的 cron 作业。

我完全确信这些任务在单独运行时不会挂起。但问题是,当我每天运行它们,在几天、几周和几个月的时间里,偶尔其中一些任务会将要悬挂。

所以我被迫终止挂起的任务并重新运行它---现在它可以成功运行了!

我想一劳永逸地解决这个问题,为此,我需要知道为什么计划任务会挂起,即使我单独运行它,它也不会挂起。

无论如何我能找出原因吗?

答案1

当您检查任务时,它会在最右侧显示上次运行状态。这通常会显示任务失败的原因。任务可能在执行过程中挂起,即使它已正常处理,因此任务会继续运行,因此从技术上讲不会失败。

结果,下次该任务应该运行时,它却没有运行,因为前一个任务仍在运行。因此错误变为:上一个任务仍在运行。

我通常通过将最大执行时间设置为小于下一个任务计划运行的时间来解决此问题。如果我知道该任务最多只运行几分钟,我通常会将强制退出设置为 5 分钟,并启用几次重新启动任务。这将确保如果任务由于某种原因无法正确运行,它将中止并再次执行。如果任务调度程序得到任务正确运行的确认,它将不会再次重试该任务。

答案2

我建议先从 EventViewer 开始,因为如果发生崩溃就应该记录下来。

您还可以向程序添加一些日志功能来查看哪个模块/任务出现故障。

删除,因为意识到 LPChip 写了类似内容:此外,作为一项总体工作,在任务调度程序中,如果完成时间超过 72 小时,您可以强制其退出(我认为这是默认设置)。如果您知道该任务只需几分钟即可完成,则将该值更改为 30 分钟(给自己留出足够的空间)。它不会帮助您解决问题,但如果这是您必须继续进行的事情,那么在您进一步调试时它可能就足够了。

相关内容