php学习笔记——popen()异步调用
2018-01-12 23:43
295 查看
写了一年的PHP后台,第一次在实践中需要用到异步编程。。。。
通过一晚上的搜索,找到了一个有效的异步编程方法,即popen()。
该函数会创建一个管道,所以不会对PHP造成阻塞。但异步是有条件的,需要在command后面加上“&”,表示后台执行,另外如果使用fread来读取管道数据,将会造成进程阻塞。
用法实例
$pid = popen("python ./Public/sleep.py &","r");
// var_dump(fread($pid,5)) ;
pclose($pid);
echo 1; 上面例子中的Python脚本会使进程沉睡20秒,但是使用popen后,进程异步执行,并未阻塞echo 1;
通过一晚上的搜索,找到了一个有效的异步编程方法,即popen()。
该函数会创建一个管道,所以不会对PHP造成阻塞。但异步是有条件的,需要在command后面加上“&”,表示后台执行,另外如果使用fread来读取管道数据,将会造成进程阻塞。
用法实例
$pid = popen("python ./Public/sleep.py &","r");
// var_dump(fread($pid,5)) ;
pclose($pid);
echo 1; 上面例子中的Python脚本会使进程沉睡20秒,但是使用popen后,进程异步执行,并未阻塞echo 1;
相关文章推荐
- [WCF 学习笔记] 7. 异步调用
- php学习笔记1--根据条件调用不同的函数
- 学习笔记之php页面ajax登录异步刷新
- php学习笔记:自定义函数的调用
- 第十章(2)-等待异步调用的完成-学习笔记
- ASP.NET 学习笔记(三) 委托,异步调用
- 学习笔记-php和js之间的相互调用
- 用popen实现在PHP代码异步调用服务器端的shell脚本
- Zeroc Ice 学习笔记--异步调用
- 用popen实现在PHP代码异步调用服务器端的shell脚本
- PHP MVC框架路由学习笔记
- php深入学习笔记二( 函数内置函数 )
- php学习笔记
- php与mysql学习笔记
- PHP学习笔记 - 进阶篇(4)
- PHP学习笔记7. PHP中的变量
- php学习之路-笔记分享20150327
- PHP异步调用socket简单实例
- php学习笔记六:PHP-基本语法
- php zend Framework2.0 学习笔记(三)