<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="PHP实现多进程并发请求编程实例代码" id="card1">
<p> 游客</p><p>
标题:PHP实现多进程并发请求编程实例代码<br/>
正文:<br/>
羡慕火影忍者里鸣人的影分身么？没错，PHP程序是可以开动影分身的！想完成任务，又觉得一个进程太慢，那么，试试用多进程来搞吧。这篇文章将会介绍一下PHP多进程的基本需求，如何创建多进程以及基本的信号控制，暂时不会告诉你如何进行进程间通信和信息共享。1. 准备在动手之前，请确定你用的不是M$ Windows平台（因为我没有Windows）。Linux / BSD / Unix应该都是没问题的。确认好了工作环境以后一起来看看我们需要的PHP模块是否都有。打开终端输入下面的命令：代码如下:$ php -m这个命令检查并打印当前PHP所有开启的扩展，看一下pcntl和posix是否在输出的列表中。1.1. pcntl如果找不到pcntl，八成是编译的时候没把这个扩展编译进去。如果你和我一样是编译安装的PHP，那么需要重新编译安装PHP。在配置的时候记得加上--enable-pcntl参数即可。代码如下:$ cd /path/to/php_source_code_dir $ ./configure [some other options] --enable-pcntl$ make &amp;amp;&amp;amp; make install1.2. posix这货一般默认就会装上，只要你编译的时候没有加上--disable-posix。2. 预备知识在继续之前，你还需要对Linux多进程有一点了解。多进程是咋回事呢？这里可跟火影忍者里的影分身稍微有点不同。首先，鸣人从小长到大，比如16岁，咳。有一天他发动了影分身，分出了5个他。显然，这些分身也是16岁的鸣人而不是刚出生啥也不懂就会哭的婴儿（那叫克隆）。然后，不一样的地方来了：分身们变成了独立的人各自去做各自的事，互相之间不再知道其他分身和原身都做了什么（当然不会像动画片里一样积累经验给原身啦）。除非，他们互相之间有交流，不然，只有16岁之前的事情才是他们共同的记忆。有同学说了，老大你这不坑爹呢么？我又没看过火影忍者！那你去看一遍好了&amp;hellip;&amp;hellip;最后，预备知识完了，就是大致了解一下主进程开出来的子进程是怎么回事。子进程的代码和主进程是完全一样的，还有一部分一样的东西就是直到发动影分身之前执行的所有内容。3. 影分身之术所以呢，没有点基础知识怎么能理解卷轴里的内容呢？打开卷轴首先看到了一个单词：fork。3.1. fork叉<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1876&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1876&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1876&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1876&amp;Page=3">[3]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1876&amp;Page=6">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=1876">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=1876">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>