中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何解决因批处理循环运行而引起的内存消耗死机问题!
作者:
标题: 如何解决因批处理循环运行而引起的内存消耗死机问题! 上一主题 | 下一主题
kdfk123
初级用户





积分 63
发帖 25
注册 2007-10-11
状态 离线
『楼 主』:  如何解决因批处理循环运行而引起的内存消耗死机问题!

因为特殊原因,我需要在我的机子上运行一个循环批处理,命令如下:
:begin
query user 1 |find "运行中" &&logoff 2
goto begin

这循环批处理连续运行几个小时我的机子是没有问题的!但是如果连续运行了几天的话,就会引发一些错误,轻则机子速度会明显变慢,重则死机!

我的机子有1G内存,是专门买来挂机的,所以需要成天运行着!但是这批处理不能连续运行着!所以我要隔三岔五得登陆机子,重启机子!很是烦人!

不知道那位高人,知道有好的解决方法!

2007-10-14 00:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 2 楼』:  

可以将他写成每次只运行3分钟;
隔1分钟运行一次!

连续运行当然会挂机的!

2007-10-14 00:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
kdfk123
初级用户





积分 63
发帖 25
注册 2007-10-11
状态 离线
『第 3 楼』:  

除了把循环的间隔改长一点外,不知道还有什么其他的办法呢!请高人指点一下啊!

2007-10-14 20:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
kdfk123
初级用户





积分 63
发帖 25
注册 2007-10-11
状态 离线
『第 4 楼』:  

那你说的:
可以将他写成每次只运行3分钟;
隔1分钟运行一次!

这个怎么写呢!希望大侠帮忙一下啊!

2007-10-20 20:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 5 楼』:  

根据实际情况,你大可每天自动重启一次你这台电脑,好像这样解决这个问题最直接

2007-10-20 23:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
kdfk123
初级用户





积分 63
发帖 25
注册 2007-10-11
状态 离线
『第 6 楼』:  

“每天自动重启一次你这台电脑”?!这还不得郁闷死我啊!每天都重启,那还不得再重新启动系统中的软件!太烦琐了!

2007-10-26 22:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 7 楼』:  

这个得关注一下

曾经也想使用批处理循环实现特定功能,但是没想到进程里的cmd.exe不断的增加,后来只得用计划任务每隔一段时间执行再exit,纯粹的批处理还不知道怎么来循环



http://dato.ys168.com
google search bot
http://dato.minidns.net/
2007-10-26 23:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lotus516
高级用户

论坛上抢劫的


积分 551
发帖 246
注册 2006-9-21
状态 离线
『第 8 楼』:  

呵呵,编两个一样的批哈,相互start,start完后就自动关闭!!如
1.bat

@echo off
ping -n 100 127.1>nul
......
start 2.bat
exit

2.bat
@echo off
ping -n 100 127.1>nul
......
start 1.bat
exit
不过我发现ping这个东西时间太不准了,有时ping一小时居然一两分钟就过了(连续运行了1天还是两天后发现),后来换sleep(本论坛有下)了.

[ Last edited by lotus516 on 2007-10-27 at 11:20 AM ]

2007-10-27 11:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 9 楼』:  

嗯,楼上的方法是解决了这个问题。

不过这种方法在安全性方面似乎不如计划任务来得好。偶的那个东东其实就是个杀进程的批,纯批的这种方式一旦被人终止cmd.exe就完蛋了,不知道有没有更完美的,或者简单点的让cmd.exe这个进程无法发现



http://dato.ys168.com
google search bot
http://dato.minidns.net/
2007-10-27 12:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lotus516
高级用户

论坛上抢劫的


积分 551
发帖 246
注册 2006-9-21
状态 离线
『第 10 楼』:  

加入系统服务,论坛上有可使任何可执行做为系统服务运行的软件!!

2007-10-28 00:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lotus516
高级用户

论坛上抢劫的


积分 551
发帖 246
注册 2006-9-21
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by dato at 2007-10-26 23:53:
这个得关注一下

曾经也想使用批处理循环实现特定功能,但是没想到进程里的cmd.exe不断的增加,后来只得用计划任务每隔一段时间执行再exit,纯粹的批处理还不知道怎么来循环

按说还是批没写得很好,一般这不会发生的啊!

2007-10-28 00:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: