PHP+shell实现多线程的方法

这里介绍怎样借助shell脚本实现多线程。

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

PHP代码:

?
1
2
3
4
5
6
<?php
for ($i=0;$i<10;$i++) {
  echo $i;
  sleep(10);
}
?>

在看下shell脚本的代码,很easy

?
1
2
3
4
5
#!/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+shell实现多线程的方法相关推荐

  1. 基于C API的MySQL数据库多线程访问方法

    说明:如何生成线程式客户端 客户端库总是线程安全的.最大的问题在于从套接字读取的net.c中的子程序并不是中断安全的.或许你可能希望用自己的告警中断对服务器的长时间读取,以此来解决问题.如果为SIGP ...

  2. Qt中使用多线程的一些心得(一)——继承QThread的多线程使用方法

    一 前言 二Qt多线程方法一 继承QThread 2.1使用多线程的原因分析 2.2 写一个继承于QThread的线程 三 总结 一 前言   本篇文章部分内容参考了该博文:传送门.   Qt中有两种 ...

  3. python自带的shell是什么-python中执行shell的两种方法总结

    一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: ...

  4. linux shell编程多线程和wait命令学习

    http://blog.csdn.net/shuanghujushi/article/details/38186303 最近在使用shell做一些部署工作,在使用过程中,效率一直不高.想提高效率,经过 ...

  5. java中断响应时间_Java多线程 sleep方法响应中断 sleep面试问题(与wait/notify的

    Java多线程 sleep方法响应中断 sleep面试问题(与wait/notify的 Java多线程 sleep方法响应中断 & sleep面试问题(与wait/notify的比较) 文章目 ...

  6. 深入探索多线程优化方法

    前言 什么是线程的概念我就不在介绍,不懂的自行百度,我想百分之九十九的人都是知道的,至于多线程,通俗的就是有很多的线程在一起工作从而完成某一件事,从而提升效率.这就是使用多线程的好处之一,举个列子,一 ...

  7. java 线程 主进程_java 多线程通用方法

    写了一个多线程的通用调用方法,只需要传入请求参数List和调用的方法即可通过多线程得到返回结果list, 适用于同一个方法被调用多次的情况. 1:首先创建一个接口 @FunctionalInterfa ...

  8. python多线程实现方法_Python3 多线程的两种实现方式

    最近学习 Python3 ,希望能掌握多线程的使用,在此做个笔记.同时也希望Python 牛人指点错误.关于线程的概念,前面简单总结了一下 java 的多线程,传送门:java 多线程概念,三种创建多 ...

  9. Hadoop HBase概念学习系列之hbase shell中执行java方法(高手必备)(二十五)

    hbase shell中执行java方法(高手必备),务必掌握! 1. 2. 3. 4. 更多命令,见scan help.在实际工作中,多用这个!!! API参考: http://hbase.apac ...

最新文章

  1. python对象编程例子-Python3.5面向对象编程图文与实例详解
  2. appium运行报错java.net.SocketException: socket write error
  3. 成人教育还是K12,对网易有道来说都很难
  4. MySQL面试题 数据库设计三范式
  5. 封装不同类模板的随机数生成器
  6. linux查询机器信息,linux_机器信息查询
  7. 《SPSS 统计分析从入门到精通(第2版)》一6.3 二项式检验
  8. python是什么 自学-为什么自学python总是坚持不下去,这篇文章给你解答!
  9. PHP SQL查询结果在页面上是乱码
  10. Axure RP 使用基础教程
  11. 耗时两周,纯手敲python入门级基础笔记
  12. 图层重命名快捷键_ps怎么给图层(批量)重命名的方法
  13. 涨见识!Java String转int还有这种写法
  14. 如何用laragon框架运行php文件
  15. 支付宝扫五福,你扫了吗
  16. 安装SQL server出现“服务没有及时响应启动或控制请求”
  17. 人工智能时代大数据分析面临的最大挑战!
  18. 2018数据结构课程设计报告
  19. 爬虫、网页分析解析辅助工具 Xpath-helper
  20. python3.6无法启动_python3.6怎么启动

热门文章

  1. lua循环,减少不必要的循环
  2. 用Java实现非阻塞通信
  3. uva10340 Ail in All
  4. xlinux中实现mdev
  5. 【★原创★】夜晚,不要让电白白流失!
  6. 机器学习常用损失函数
  7. Ubuntu20.04安装ROS Noetic
  8. centos 卸载_9个Linux发行版本,教你如何分别使用命令行卸载安装包
  9. html4 form日期,bootstrap4日期时间选择器插件
  10. cmd 取消点击锁定功能