Swoole 进程,协程

swoole的进程和协程学习记录

Watermoe

什么是进程

进程就是一个正在运行的一个实例.

 

PHP自带的pcntl,存在很多不足,如:

  • pcntl没有提供进程间通信的功能
  • pcntl不支持重定向标准输入和输出
  • pcntl只提供了fork这样原始的接口,容易使用错误
  • swoole_process提供了比pcntl更强大的功能,更易用的API,使PHP在多进程编程方面更加轻松。

实例

 

ps aux | grep [filename]  查看文件当前开启的所有进程。

 

pstree -p [prot num]  用树的形式展示该端口号的上线关系.

ps aft | grep [filename] 查看当前文件的上下关系

 

<?php 

/**
 实例化进程类
**/
$process = new swoole_process(function(swoole_process $proce ){
  //todo
}, true); // true 如果进程有输出禁止输出到命令行

/**
进程ID
**/
$pid = $process->start();