我正在寻找一种方法来运行超时的
PHP进程.目前我只是使用
exec()
,但它没有提供超时选项.
我还尝试过使用proc_open()
打开流程并在生成的管道上使用stream_set_timeout()
,但这也不起作用.
那么,有没有办法用超时运行命令(精确的PHP命令)? (PS:这适用于max_execution_time限制失败的情况,因此无需建议.)
(顺便说一下,我还需要检索进程的返回码.)
我对这个主题进行了一些搜索并得出结论,在某些情况下(如果你使用的是linux)你可以使用’timeout’命令.它非常灵活
Usage: timeout [OPTION] DURATION COMMAND [ARG]... or: timeout [OPTION]
在我的特定情况下,我正在尝试从PHP运行sphinx索引器,有点迁移数据脚本所以我需要重新索引我的sphinx文档
exec("timeout {$time} indexer --rotate --all",$output);
原文地址:https://www.jb51.cc/php/138458.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。