如果计划任务运行时间过长,如何运行任务

时间:2019-08-29 08:50:04

标签: batch-file scheduled-tasks

我正在使用Windows Scheduler每隔一个半小时运行.bat文件。 .bat文件包含一个代码,它们一步一步地执行Sisense构建(每个构建之间都会有一个暂停,因为它们不会并行运行。)

.bat代码示例:

@echo off
start /wait /d "C:\Program Files\Sisense\Prism" psm ecube build filename="C:\Users\Games.ecube" 
start /wait /d "C:\Program Files\Sisense\Prism" psm ecube build filename="C:\Users\Netomedia.ecube"
start /wait /d "C:\Program Files\Sisense\Prism" psm ecube build filename="C:\Users\AffiliatePixel.ecube"
@end

每行开始不同的构建并等待它们,整个.bat文件运行大约60分钟,而计划是每90分钟运行一次。

问题在于,在某些情况下,其中一个版本可能会卡住并运行数小时,直到我在Task Manager中手动终止某些进程为止。 我正在寻找一种运行命令的方法,如果任务运行X分钟以上,该命令将终止进程

我尝试在任务计划程序中使用kill选项,但是它只能重新启动计划,无法杀死Sisense中卡住的进程。 我尝试了在X分钟后删除/ wait并向KILL进程添加TIME OUT的选项

start /d "C:\Program Files\Sisense\Prism" psm ecube build filename="C:\Users\Games.ecube"
TIMEOUT 10 & REM Waits 10 seconds before executing the next command
"C:\Program Files\Sisense\Prism" psm ecs stop

它可以工作,但是问题是,即使工作在几秒钟后完成,它也会一直等待我设置的超时时间

有没有人建议我在.bat文件中做什么,以便在X分钟(例如90分钟)后终止该进程

将感谢您的帮助,

Dima K

0 个答案:

没有答案