gpt4 book ai didi

php exec如何计算时间?

转载 作者:行者123 更新时间:2023-12-04 14:50:58 30 4
gpt4 key购买 nike

我正尝试在 php 中为我的任务实现某种“多处理”。任务是检查我们网络中每个设备的状态。

为此我决定使用循环 exec 并且它有效。但我不知道它是否工作正常:

$command = "php scan_part.php $i > null &";
exec($command);

这会根据需要多次调用 scan_part.php,但问题是:我如何计算所有 scan_part.php 所需的时间被处决?

请帮助我,我卡住了!

最佳答案

使用proc_open启动您的脚本而不是 execProc_open让你等到一个过程通过 proc_close 完成,它一直等到程序终止。

$starttime = microtime(true);
$processes = array();
// stdin, stdout, stderr- take no input, save no output
$descriptors = array(
0 => array("file", "/dev/null", 'r'),
1 => array("file", "/dev/null", 'w'),
2 => array("file", "/dev/null", 'w'));

while ($your_condition)
{
$command = "php scan_part.php $i"; // no pipe redirection, no background mark
$processes[] = proc_open($command, $descriptors, $pipes);
}

// proc_close will block until the program terminates or will return immediately
// if the program has already terminated
foreach ($processes as $process)
proc_close($process);
$endtime = microtime(true);

$delta = $endtime - $starttime;

关于php exec如何计算时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6252966/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com