2、PHP代码实现
一、PHP的pcntl简介pcntl是php一个扩展,用于php处理多进程的开拓。pcntl扩展的安装不是重点,网上搜索结果一大把。我们这里利用pcntl来实现一个大略的例子做解释。
大略代码

看运行结果(一定要用命令行的办法实行,浏览器的实行办法得到的结果是不一样的):
运行结果
我想,这个可能会让好多朋友困惑了,怎么两句话都打印出来了呢?
首先在fork之后,这段代码就不是一个进程在利用,他分裂成两个进程,一个父进程,一个子进程。
实在也可以这样理解,子进程是父进程复制出来的。但在操作系统的角度,他们是一种兄弟关系,两个进程共享一个代码空间(指令集),单数数据空间是相互独立的(但是不知道为啥大家都称呼他们为父进程和子进程,我们也这么称呼吧)。
父进程和子进程有一点是不同的,如果fork成功,子进程的返回值是0,父进程的返回值是子进程的进程号。
在这里,我们对上面的示例代码解释一下:
在代码实行到”pid=pcntl_fork();”时,系统会造一个和主进程千篇一律的子进程。
子进程的”pid=pcntl_fork();”一句中 pid得到的便是子进程本身的pid;
子进程结束后,父进程的”pid=pcntl_fork();”中pid得到的便是父进程本身的pid,
因此该程序有两行输出。
两个也算多进程?当然算了,还不足的话,那就循环fork就行了。
以上明白了就算入门了,更多pcntl函数的用法详见PHP官网手册。