php如何实现多线程 php实现多线程方法
php中可以实现多线程,是一种利用旧的exec函数通过异步处理方法实现多线程的,exec函数本身就是一个执行外部程序的php函数。下面我们就来具体看看php多线程的实现方法。
我们首先来看一个示例
1 2 3 4 5 6 7 8 9 10 |
<?php
class execMulti { function MultithreadTest { exec("php static_massive.php > /dev/null &");
echo "处理完成了"; } } ?>
|
当执行上述操作时,即使在耗时的处理结束之前也显示处理完成。
1 |
exec("php static_massive.php > /dev/null &");
|
由于“ > / dev / null& ”返回的值丢失,我们不会等待响应。
因此,处理完成指示比耗时处理更快。
但是,该方法不知道耗时的处理何时结束。
不要忘记考虑采取日志的执行,登录DB等方法向用户传递执行结果。
用于多线程的方法(pthreads)
最后,介绍使用PHP扩展模块pthreads的方法。
它可以比上面使用exec的方法更简单。
①配置环境并安装php
请使用vagrant等准备喜欢的环境。
php 需要使用线程安全版本,这是多线程和安全的实现。
从官方下载线程安全版本的 PHP。
访问以下内容并从图中的红框下载。
http://www.php.net/downloads.php
此外,对于线程安全安装,您需要使用configure选项指定-enable-maintainer-zts。
1 |
./configure --enable-maintainer-zts
|
根据需要,也可以安上Apache和mysql的选项。
用以下命令确认了php的版本就可以了。
1 |
php -v
|
②pthreads的安装
我们来下载zip格式。
https://github.com/krakjoe/pthreads/archive/master.zip
解压zip,移动到解压缩文件,然后执行phpize。
如果您在PHP模块列表上运行pthreads,则可以执行以下操作。
1 |
php -m
|
根据环境的不同,这一块的设定也会有所不同,可以用环境名+pthreads等进行检索来寻找信息。
③尝试使用多线程
示例如下
1 2 3 4 5 6 7 8 9 10 11 |
<?php class pthreadsTest extends Thread { public function run () { sleep(5); } } $ts1 = new pthreadsTest(); $ts1->start(); $ts2 = new pthreadsTest(); $ts2->start(); ?>
|
因为sleep(5)被调用两次,所以需要10秒,但实际上它将是5秒。
相关推荐:
最新新闻:
- 相机的iso什么意思?旁轴相机和胶片机的区别
- 相机m档是什么档怎么用的?索尼相机连手机app下载
- 电磁阀几位几通的判断方法是什么?发动机电磁阀的作用
- 如何把u盘里的东西拷到手机里?用手机怎么往u盘里下载歌曲?
- Win11屏幕刷新率调整不了怎么解决?windows11兼容性怎么样?
- PPT柱状图如何增加柱子?ppt文本框内部边距怎么设置?
- 每日速递:NSO 会员N64游戏库今日更新 三款游戏入库
- 全球焦点!《卡普空街机合集2》现已发售 收录32款街机游戏名作
- 腾讯出行微信内测打车功能 采用多平台整合的方式
- 微软启动蓝屏提醒 一代经典Windows 8.1被放弃时间确定
- 当前快报:《霍格沃茨的遗产》新演示短片 展示学校北塔区域
- 全球快资讯丨《生化危机8:村庄-黄金版》雇佣兵额外命令预告发布
- 微信安卓8.0.25版发布 更新日志依然是熟悉得不能再熟悉的9个字
- 微信手表版上线:在vivo Watch 2上就能回复消息
- Windows 11声音音质都开始缩水了 Bug不断用户体验不舒爽
- 优酷投屏收费引热议!官方解答:会员权益不包含投屏
- 荣耀MagicBook 14锐龙版图赏 最高搭载AMD锐龙 7 6800H标压处理器
- Intel新旗舰至强W9-3495首曝
- Redmi G 2022游戏本开启预售 搭载新一代NVIDIA Ampere架构
- Intel 13代酷睿i5-13600K架构/频率大升级
- AirPods Pro 2或将抛弃旧款iPhone 仅可以适配iPhone 11或以上机型
- 世界看热讯:电影《奥本海默》预告泄露 明年7月21日上映
- OPPO Watch 3系列配置剧透 将成为骁龙W5首秀舞台
- 荣耀智慧屏X3i发布 采用一体化金属LCD全面屏主打低端千元市场
- 消息称iPhone15全系将采用叹号屏 苹果全面屏手机/平板加速到来
- iQOO 10 Pro根治电量焦虑症 200W超快闪充的实际体验到底有多好?
- 荣耀平板8首发评测 全新升级性能更强大12英寸屏幕+8扬声器
- 荣耀平板8开箱图赏 12英寸护眼大屏拥有2K分辨率
- 荣耀X40i正式发布 引入了全新的钻彩星河设计
- moto razr 2022或推迟发布 主要卖点是三个数字
- 苹果宣布iOS 16新功能上线 想用先交授权费借此来收取不少费用
- 苹果发布iOS/iPadOS 15.6更新 修复诸多Bug
- 小米13曝光首批搭载骁龙8 Gen2机型
- 荣耀平板8预售 三种选择将于7月29日正式发售
- 当前短讯!《上古卷轴ol》官方宣布 游戏玩家突破2100万
- 焦点要闻:《最后的生还者》重制版无障碍选项曝光 沿用二代
- 世界热资讯!育碧正开发多个《刺客信条》游戏 新作极有可能在日本
- 今日热讯:《命运2》将于8月23日举行专场发布会
- 全球视点!性价依旧良心!新款小米Redmi G游戏本6299元首发:2.5K/165Hz大屏
- 精彩看点:《哥谭骑士》蝙蝠女角色预告公开 小丑不会出现
- 全球视点!《时空勇者》评分汇总:一款Switch必玩的RPG游戏
- 动态焦点:暴跌50%!32GB DDR5内存史低价1169元 好价快买
- 【世界报资讯】每日低价硬货:27英寸4K显示器到手999元
- 每日信息:雷蛇发布新款PS5手柄专用快充底座 369元!
- 【环球播资讯】《漫威蜘蛛侠》PC版推荐配置出炉:GTX 1060还能再战十年
- 天天视讯!内存又降价了!32GB DDR4内存秒杀599元
- 全球信息:《糖豆人》再次联动《哥斯拉》追加全新服装
- 当前资讯!3月上映《龙与地下城:盗亦有道》发布正式预告
- 每日精选:《SD高达 激斗同盟》推出试玩版推出 追加剧情确定
- 环球今热点:《鬼灭之刃:火神血风谭》8月更新鬼化祢豆子
- 【当前热闻】Fami通新一周销量榜 《怪物猎人崛起》再次登顶
- 天天视点!剧情驱动RPG《电气马戏团》9月6日发售 登陆全平台
- 焦点讯息:《七龙珠:破界斗士》弗利萨角色预告 10月13日发售
- 全球看点:《忍者神龟合集》宣布8月30日发售 登陆全平台
- 【全球时快讯】《漫威蜘蛛侠:复刻版》国区开启预购 379元
- 今日讯!诺兰新片《奥本海默》首张海报曝光
- 焦点速讯:互联新体验&护眼新标杆 荣耀全场景发布会推出五大新品
- 天天热文:15天免费试骑 折叠山地自行车仅298元
- 世界观速讯丨开启专业创作新时代 洞察用户需求的华硕靠什么成功?
- 当前讯息:星巴克不锈钢马克杯 小米平替仅29元
- 全球快报:华硕ProArt创16 2022重磅首发 独创华硕旋钮设计玩出创作新花样
- 当前聚焦:美剧《哥斯拉大战泰坦》新卡司公布
- 焦点快报!传字节跳动估值跌破3000亿美元 比去年至少下跌25%
- 天天热资讯!【手慢无】小米12S破发 到手仅3799元 还能6期免息
- 全球信息:好莱坞明星最新片酬曝光 阿汤哥破亿居榜首
- 【世界新要闻】旷世G7六期免息啦!这个暑假就要宅在家里打游戏
- 环球精选!机身细节出众 新CODE01高性能轻薄本新图来了
- 世界热头条丨《光明记忆:无限》今日正式登陆主机端 售价78港币
- 世界要闻:NAND供应过剩!SSD价格还要大降价 降幅不小
- 全球讯息:不打价格战 快递报复性涨价 网友吐槽:还是不送上门
- 当前简讯:被评为天猫精灵“超级黑马伙伴” 森歌集成灶究竟有何魔力?
- 全球热门:京东携手TCL发布一价无忧服务标准
- 【世界速看料】三星完成第二代智能SSD研发 功耗降低70% CPU占用降97%
- 天天简讯:沈腾开用小米12S Ultra:本人自拍被夸帅
- 天天热点!百亿补贴再爆惊喜 12代标压+RTX3050++ 120Hz OLED 华硕无畏Pro15 2022仅需6299元