介绍
小编给大家分享一下你了解php中pcntl_fork吗,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
pcntl_fork()函数是php-pcntl模块中用于创建进程的函数。(不支持windows)
至于php_pcntl扩展如何安装开启这里就不介绍了,只分析pcntl_fork()这个函数本身。
one 美元;=,123;一个+ +美元;two 美元;=,();pid 美元;=,[];pid 美元;=,pcntl_fork (); three 美元;=,时间(),
当:pcntl_fork()函数执行的时候,会创建一个子进程。子进程会复制当前进程,也就是父进程的所有:数据,代码,还有状态。
1。当pcntl_fork()创建子进程成功后,在父进程内,返回子进程号,在子进程内返回0,失败则返回1
2。子进程会复制父进程的代码,数据。那么就说明:子,父进程拥有的代码和数据会一模一样。
3。<强>重点强>:子进程会复制父进程的状态,那么就有上面的示例代码:在第五行执行了pcntl_fork,那么创建出的子进程,代码也是从第五行开始执行的。又子进程复制了数据,代码,所以,在子进程内同理存在:一美元,美元两个等变量
引用>for ($小姐:=,0;,美元小姐:& lt;, 3;,我+ +美元),{ ,,,pid 美元;=,pcntl_fork();}睡眠(30);那么:上面的为循环,实际会产生多少个子进程?答案是7个,在linux下,用ps命令将可以看到8个进程(1个父进程,7个子进程)
原因:父进程在我=0时,创建出一个子进程0,此时的子进程,还会继续执行循环。创建出属于自己的子进程。同理:i=1时也会这样……以上是“你了解php中pcntl_fork吗”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
你了解php中pcntl_fork吗