Php 睡眠永远不会继续执行
我制作了一个脚本来检查服务器的可用性 该站点已关闭,我正在等待修复(我正在为一名客户接听电话,并正在等待提供商的通知单),以限制我使用的电话: 问题: 当我开始编写脚本时,它在1800秒的睡眠中冻结,没有重新执行任何操作 鉴于:Php 睡眠永远不会继续执行,php,curl,goutte,Php,Curl,Goutte,我制作了一个脚本来检查服务器的可用性 该站点已关闭,我正在等待修复(我正在为一名客户接听电话,并正在等待提供商的通知单),以限制我使用的电话: 问题: 当我开始编写脚本时,它在1800秒的睡眠中冻结,没有重新执行任何操作 鉴于: 我用160的睡眠时间测试了我的脚本(对于ex),它打了多次电话 检查了我的电源设置,这样机器就不会处于待机状态 检查错误日志 (即使很明显)我在CLI中运行 检查文档中的问题,但什么都没有 找不到相关的东西 我认为你的逻辑有错误。 例如: 凌晨5点 然后$seconds
我认为你的逻辑有错误。 例如: 凌晨5点 然后
$secondsToSleep
是20*60
=1200秒代码>
调用sleep函数时,将其再次乘以20
睡眠($hours[$hour]*$secondsToSleep)代码>=>睡眠(20*1200)代码>=>24000秒
=>6,66。。。小时数
如果只需更新睡眠参数,结果应与预期一致
if(!$available) {
$secondsToSleep = $hours[$hour]*60;
echo "\n Sleeping for ".$secondsToSleep;
sleep($secondsToSleep); //Sleep until the next request
}
这不是一个cronjob更好吗?看看,在PHP中出现长时间睡眠的问题似乎并不少见。@杰夫:不是真的,因为我最多每月使用一次,这样我就可以控制时间间隔,谢谢你该死的…谢谢你…我太困了…最小的错误让你崩溃了…我还在某个点上添加了一个随机整数(但最后删除了)。有人无缘无故地投了反对票,我讨厌这些人。我想他们希望得到一个关于y*y和y不一样的详细解释;)
if(!$available) {
$secondsToSleep = $hours[$hour]*60;
echo "\n Sleeping for ".$secondsToSleep;
sleep($secondsToSleep); //Sleep until the next request
}