首页 >头条 > 正文

微博 Qzone 微信 pcntl_fork实现PHP多进程

原创2017-11-03 13:57:330917
PHP工程师平时使用最多的应该是PHP-FMP调度php进程了,PHP的使用并不局限于做Web,也可以用来进行系统工具类的编程,做监控或者是运维。接下来就说说如何实现PHP多进程的编程。

首先启动一个主进程,主进程用来读取配置信息

例如,我读取到了我需要监控5个指标。接下来主进程启动5个子进程,分别监控这5个指标。

化简操作:一个主进程创建5个子进程

创建进程在需要使用php的一个函数pcntl_fork(),这个函数可能有的人不太熟,不过接触过Linux C变成的人都知道Linux下有个叫fork()的函数,用来创建子进程。

需要注意的是:这个函数在Linux下才能使用,而且需要安装pcntl的扩展。

官方文档是这样说的:

pcntl_fork()函数创建一个子进程,这个子进程仅PID(进程号) 和PPID(父进程号)与其父进程不同。fork怎样在您的系统工作的详细信息请查阅您的系统 的fork(2)手册。

成功时,在父进程执行线程内返回产生的子进程的PID,在子进程执行线程内返回0。失败时,在 父进程上下文返回-1,不会创建子进程,并且会引发一个PHP错误。

这样就可以创建一个子进程了,子进程创建成功以后会执行pcntl_fork()之后的方法。

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php pcntl Qzone
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类