php计划任务怎么停止了,不知道什么原因

wxhbbdd 2012-01-06 04:24:49
<?php
ignore_user_abort();
set_time_limit(0);
$interval = 3600;
do
{
if(file_exists('stop'))
exit;
$fp = fopen('text','a');
fwrite($fp,date('Y-m-d H:i:s')."\r\n");
fclose($fp);
sleep($interval);
}
while(true);
?>
test结果:
2012-01-04 11:00:02
2012-01-04 11:59:05
2012-01-04 12:00:02
2012-01-04 12:59:05
2012-01-04 13:00:02
2012-01-04 13:59:05
2012-01-04 14:00:02
2012-01-04 14:59:05
2012-01-04 15:00:02
2012-01-04 15:59:05
2012-01-04 16:00:02
2012-01-04 16:59:05
2012-01-04 17:00:02
2012-01-04 17:59:05
2012-01-04 18:00:02
2012-01-04 18:59:05
2012-01-04 19:00:02
2012-01-04 19:59:08
2012-01-04 20:00:05
2012-01-04 20:59:12
2012-01-04 21:00:08
2012-01-04 21:59:15
2012-01-04 22:00:12
2012-01-04 22:59:19
2012-01-04 23:00:15
2012-01-04 23:59:22
2012-01-05 00:00:19
2012-01-05 00:59:26
2012-01-05 01:00:23
2012-01-05 01:59:30
2012-01-05 02:00:26
2012-01-05 02:59:33
2012-01-05 03:00:30
2012-01-05 03:59:37
2012-01-05 04:00:34
2012-01-05 04:59:41
2012-01-05 05:00:37
2012-01-05 05:59:44
2012-01-05 06:00:41
2012-01-05 06:59:48
2012-01-05 07:00:44
2012-01-05 07:59:52
2012-01-05 08:00:48

这代码怎么运行不到24个小时就挂了,我的就行了21个小时,它应该无限执行下去才对啊,服务器没有重启过一直运行着。
不知道怎么回事 求大家帮助!
...全文
204 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jsonyv 2012-01-09
  • 打赏
  • 举报
回复
LZ真霸气,居然用PHP来搞这玩意,哥第一次听说一个PHP程序执行1天!
helloyou0 2012-01-07
  • 打赏
  • 举报
回复
你要仔细检查你代码的内存使用情况,
因为php结束会释放资源,但是,如果你是一直运行的,有些资源一直无法释放就很正常了....
这也有可能是造成死掉的一个原因


[Quote=引用 6 楼 helloyou0 的回复:]

可以,
但是每天挂个一两次很正常....


引用 4 楼 wxhbbdd 的回复:

那php的就不行吗?
[/Quote]
helloyou0 2012-01-07
  • 打赏
  • 举报
回复
可以,
但是每天挂个一两次很正常....


[Quote=引用 4 楼 wxhbbdd 的回复:]

那php的就不行吗?
[/Quote]
黄袍披身 2012-01-07
  • 打赏
  • 举报
回复
計劃任務吧年輕人...
wxhbbdd 2012-01-07
  • 打赏
  • 举报
回复
我还是计划任务吧
wxhbbdd 2012-01-07
  • 打赏
  • 举报
回复
谢谢各位!
josph2012 2012-01-06
  • 打赏
  • 举报
回复
什么应用这么恨。
wxhbbdd 2012-01-06
  • 打赏
  • 举报
回复
那php的就不行吗?
foolbirdflyfirst 2012-01-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wxhbbdd 的回复:]

我的是win2003 iis服务器。window下的计划任务最小单位只能是天 我想每小时执行。如果是linux就像你说的就好办了。所以现在我只能用php去无限循环
[/Quote]
你现在这种方式等于挂着个apache子进程一直执行php,说不准apache里面那个配置值就会影响到这个功能。
最好还是操作系统取执行计划任务,你说的“window下的计划任务最小单位只能是天”问题应该是不存在的
看文档
http://support.microsoft.com/kb/308569
有这么一句话:

备注: 如果打开了“任务计划”,则可通过以下方法随时打开任务的属性对话框:右键单击该任务,然后单击属性。 

不能将任务安排成在小于一天的时间间隔内重复;但是,可在属性对话框中这样做:
单击日程安排选项卡,然后单击高级。
单击选中“重复任务”复选框,然后指定希望任务在多少分钟或多少小时后重复
wxhbbdd 2012-01-06
  • 打赏
  • 举报
回复
我的是win2003 iis服务器。window下的计划任务最小单位只能是天 我想每小时执行。如果是linux就像你说的就好办了。所以现在我只能用php去无限循环
yupengbo 2012-01-06
  • 打赏
  • 举报
回复
我不知道你用的是什么操作系统,我感觉作计划任务的时候,不要让php去无限循环,通过其它途径去实现。
比如:
Linux系统的话,可以把你的程序加到cron里面去。让cron一天执行一次就OK了。
Windows系统的话,好像是有个任务计划什么的。把你的php程序加到那里面比较好一些。
个人意见,仅供参考。

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧