我在php中,使用了pclose(popen())之后,一直等待popen运行的脚本运行完成才继续向下执行。
//test.php pclose(popen('php '.__DIR__.'/index.php','r')); $fp = fopen('product.txt', 'cb'); if(flock($fp, LOCK_EX | LOCK_NB)){ echo "ok<br>"; }else{ echo "no<br>"; } fclose($fp);
//index.php sleep(10); set_time_limit(0); $fp = fopen('product.txt', 'cb'); flock($fp, LOCK_EX | LOCK_NB); for($i = 10 ; $i ;$i--){ fwrite($fp,$i."\n"); sleep(6); } fclose($fp);
在test.php中第2行代码一直等到index.php执行完毕才开始运行,请问这是为什么
我在php中,使用了pclose(popen())之后,一直等待popen运行的脚本运行完成才继续向下执行。
//test.php pclose(popen('php '.__DIR__.'/index.php','r')); $fp = fopen('product.txt', 'cb'); if(flock($fp, LOCK_EX | LOCK_NB)){ echo "ok<br>"; }else{ echo "no<br>"; } fclose($fp);
//index.php sleep(10); set_time_limit(0); $fp = fopen('product.txt', 'cb'); flock($fp, LOCK_EX | LOCK_NB); for($i = 10 ; $i ;$i--){ fwrite($fp,$i."\n"); sleep(6); } fclose($fp);
在test.php中第2行代码一直等到index.php执行完毕才开始运行,请问这是为什么
pclose(popen('nohup ' . $cmd . ' & 2>&1', 'r'));
立即学习“PHP免费学习笔记(深入)”;
pclose(popen('php /path/to/task.php &', 'r')); 其中&表示放入后台执行脚本task.php.
另外注意,if(flock($fp,LOCK_EX)) 会阻塞到获取排它锁.
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号