Maison  >  Article  >  développement back-end  >  php与shell实现多线程的简单例子

php与shell实现多线程的简单例子

WBOY
WBOYoriginal
2016-07-25 08:57:10822parcourir
  1. //for循环
  2. for ($i = 0; $i {
  3. echo $i;
  4. sleep(5);
  5. }
复制代码

接下来,就要shell上场了,调用php文件:sleep.php,代码如下:

  1. #!/bin/bash
  2. #edit by bbs.it-home.org
  3. for i in 1 2 3 4 5
  4. do
  5. /usr/bin/php -r -q /data/website/sleep.php &
  6. done
复制代码

注意: 以上代码的关键点在于,要在请求php代码的行尾加一个&符号,否则不能进行多线程的,&表示讲服务推送到后台执行。 因此,在shell的每次的循环中不必等php的代码全部执行完在请求下一个文件,而是同时进行的,即实现了多线程。 运行下shell将看到10个test.php进程在跑,可以考虑结合下linux的定时器crontab,定时请求shell脚本,即可处理一些多线程的任务,比如批量上传或下载等。

好了,有关php与shell结合实现多线程的例子,就介绍到这里了,希望对大家有所帮助。



Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn