PHP+shell实现多线程的方法


Posted in PHP onJuly 01, 2015

本文实例讲述了PHP+shell实现多线程的方法。分享给大家供大家参考。具体如下:

这里介绍如何借助shell脚本实现多线程。

先写个简单的php代码,这里为了让脚本执行时间更长,方便看效果,sleep一下,呵呵!先看下test.php的代码:

PHP代码:

<?php
for ($i=0;$i<10;$i++) {
  echo $i;
  sleep(10);
}
?>

在看下shell脚本的代码,非常简单

#!/bin/bash
for i in 1 2 3 4 5 6 7 8 9 10
do 
  /usr/bin/php -q /var/www/html/test.php &
done

注意到在请求php代码的那行有一个&符号吗,这个是关键,不加的话是不能进行多线程的,&表示讲服务推送到后台执行,因此,在 shell的每次的循环中不必等php的代码全部执行完在请求下一个文件,而是同时进行的,这样就实现了多线程,下面运行下shell看下效果,这里你将 看到10个test.php进程再跑,再利用linux的定时器,定时请求这个shell,在处理一些需要多线程的任务,例如,批量下载时,非常好用!

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php5 and xml示例
Nov 22 PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 PHP
Thinkphp中数据按分类嵌套循环实现方法
Oct 30 PHP
php中随机函数mt_rand()与rand()性能对比分析
Dec 01 PHP
四种php中webservice实现的简单架构方法及实例
Feb 03 PHP
php微信公众平台开发类实例
Apr 01 PHP
浅谈PHP中Stream(流)
Jun 08 PHP
微信第三方登录(原生)demo【必看篇】
May 26 PHP
PHP获取星期几的常用方法小结
Dec 18 PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 PHP
PHP实现提取多维数组指定一列的方法总结
Dec 04 PHP
php模拟实现斗地主发牌
Apr 22 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
Jul 01 #PHP
wamp服务器访问php非常缓慢的解决过程
Jul 01 #PHP
nginx+thinkphp下解决不支持pathinfo模式
Jul 01 #PHP
Smarty foreach控制循环次数的一些方法
Jul 01 #PHP
在Linux系统下一键重新安装WordPress的脚本示例
Jun 30 #PHP
Yii扩展组件编写方法实例分析
Jun 29 #PHP
php实现SAE上使用storage上传与下载文件的方法
Jun 29 #PHP
You might like
解析php取整的几种方式
2013/06/25 PHP
php学习笔记之面向对象
2014/11/08 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
PHP基于回溯算法解决n皇后问题的方法示例
2017/11/07 PHP
php实现socket推送技术的示例
2017/12/20 PHP
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
jquery toolbar与网页浮动工具条具体实现代码
2014/01/12 Javascript
不间断循环滚动效果的实例代码(必看篇)
2016/10/08 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
2018/05/23 jQuery
Vue组件全局注册实现警告框的实例详解
2018/06/11 Javascript
原生js实现的移动端可拖动进度条插件功能详解
2019/08/15 Javascript
微信小程序 函数防抖 解决重复点击消耗性能问题实现代码
2019/09/12 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
状态机的概念和在Python下使用状态机的教程
2015/04/11 Python
Python3搜索及替换文件中文本的方法
2015/05/22 Python
Python中字典的基础知识归纳小结
2015/08/19 Python
python logging 日志轮转文件不删除问题的解决方法
2016/08/02 Python
详解Python 数据库 (sqlite3)应用
2016/12/07 Python
python3之微信文章爬虫实例讲解
2017/07/12 Python
利用Pycharm断点调试Python程序的方法
2018/11/29 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
python交易记录链的实现过程详解
2019/07/03 Python
python识别验证码图片实例详解
2020/02/17 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
django form和field具体方法和属性说明
2020/07/09 Python
html5中canvas学习笔记2-判断浏览器是否支持canvas
2013/01/06 HTML / CSS
Anthropologie英国:美国家喻户晓的休闲服装和家居产品品牌
2018/12/05 全球购物
美国在线购买空气净化器、除湿器、加湿器网站:AllergyBuyersClub
2021/03/16 全球购物
Java里面StringBuilder和StringBuffer有什么区别
2016/06/06 面试题
本科生详细的自我评价
2013/09/19 职场文书
土木工程专业自荐信
2013/10/04 职场文书
医院护士工作检讨书
2014/10/26 职场文书
2014年超市员工工作总结
2014/11/18 职场文书
初中班级口号霸气押韵
2015/12/24 职场文书
2022年显卡天梯图(6月更新)
2022/06/17 数码科技