Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file Windows批处理文件在后台运行,并自动终止任何无响应的程序_Batch File_Process_Thread Safety_Background Process_Windows 7 X64 - Fatal编程技术网

Batch file Windows批处理文件在后台运行,并自动终止任何无响应的程序

Batch file Windows批处理文件在后台运行,并自动终止任何无响应的程序,batch-file,process,thread-safety,background-process,windows-7-x64,Batch File,Process,Thread Safety,Background Process,Windows 7 X64,我使用的应用程序一直挂起,使我的计算机没有响应,此时我将无法打开任务管理器或执行任何其他操作。我必须硬重启我的系统 我遇到了一些批处理命令,它可以杀死没有响应的程序 taskkill /f /fi "status eq not responding" 我知道如何创建批处理文件 有人能建议如何始终在后台运行此批处理命令,并搜索那些没有响应的程序吗 非常感谢您的帮助。批处理程序从未设计为在windows的后台运行。它们总是简单地执行一次 对于这种类型的场景,我所做的是将windows计划任务设置为

我使用的应用程序一直挂起,使我的计算机没有响应,此时我将无法打开任务管理器或执行任何其他操作。我必须硬重启我的系统

我遇到了一些批处理命令,它可以杀死没有响应的程序

taskkill /f /fi "status eq not responding"
我知道如何创建批处理文件

有人能建议如何始终在后台运行此批处理命令,并搜索那些没有响应的程序吗


非常感谢您的帮助。

批处理程序从未设计为在windows的后台运行。它们总是简单地执行一次

对于这种类型的场景,我所做的是将windows计划任务设置为每X分钟运行一次,其中X是检查环境中进程的适当间隔


希望有帮助

您可以创建计划任务,以便在Windows中定期运行。查找Windows任务计划程序

另一种方法是启动此批处理文件并在无限循环中运行此命令。前

:start
taskkill /f /fi "status eq not responding"
sleep 600
goto start

这将每10分钟运行一次命令。

如果我的程序导致计算机冻结,那么在当时,调度程序还会执行该任务吗?未知。你应该能够始终控制你的计算机(理论上无论如何)。如果您不能,那么任务调度器也不能。我必须试一试。您可以在始终运行的批处理文件中使用
timeout
命令(或者如果您不喜欢vbscript窗口)。是的,这取决于冻结的情况。听起来不是一个非常安全的程序,我猜这是在桌面上,而不是任何类型的服务器上。@RyanMcArthur应用程序在windows桌面上,但在命令提示符下键入
timeout/?
与服务器保持交互。键入
help/?
以获取常用命令的列表。它们都可以是
命令/?
。一些较新的命令具有子命令,因此
reg/?
reg query/?
。要访问任务计划程序-
schtasks/?
schtasks/query/?
(有时不一致
/
有时不一致)。因此,设置一个标签(
:MyLabel
然后是taskkill命令,然后是
timeout
然后是
转到MyLabel
。注意:将imagename用作不响应仅表示程序已5秒未从windows拾取消息。
sleep
不是windows命令提示符中的本机命令;请改用
timeout/t 600/NOBREAK
。同意d、 但是sleep.exe作为MS eco系统的一部分已经有很长时间了,我不知道有哪个版本的windows不包含它。