加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

你知道php中pcntl_fork吗

发布时间:2022-07-16 16:03:50 所属栏目:PHP教程 来源:互联网
导读:关于pcntl_fork()函数是php-pcntl模块中用于创建进程的函数。本篇文章将会带领你们一同走进充满奥秘的PHP中,一起出发吧!!! $one = 123;$one++;$two = time();$pid = [];$pid = pcntl_fork();$three = time(); 当:pcntl_fork()函数执行的时候,会创建一
  关于pcntl_fork()函数是php-pcntl模块中用于创建进程的函数。本篇文章将会带领你们一同走进充满奥秘的PHP中,一起出发吧!!!
 
  $one = 123;$one++;$two = time();$pid = [];$pid = pcntl_fork();$three = time();
 
  当:pcntl_fork()函数执行的时候,会创建一个子进程。子进程会复制当前进程,也就是父进程的所有:数据,代码,还有状态。
 
  1.当pcntl_fork()创建子进程成功后,在父进程内,返回子进程号,在子进程内返回0,失败则返回-1
 
  2.子进程会复制父进程的代码,数据。那么就说明:子,父进程拥有的代码和数据会一模一样。
 
  for ($i = 0; $i < 3; $i++) {
 
      $pid = pcntl_fork();}sleep(30);
 
  那么:上面的for循环,实际会产生多少个子进程?答案是7个,在linux下,用ps命令将可以看到8个进程(1个父进程,7个子进程)
  原因:父进程在 i = 0 时 , 创 建 出 一 个 子 进 程 0 , 此 时 的 子 进 程 , 还 会 继 续 执 行 循 环 。 创 建 出 属 于 自 己 的 子 进 程 。 同 理 : i=0时,创建出一个子进程0,此时的子进程,还会继续执行循环。创建出属于自己的子进程。同理: i=0时,创建出一个子进程0,此时的子进程,还会继续执行循环。创建出属于自己的子进程。同理:i=1时也会这样……

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读