\swoole_process

swoole进程管理类 内置IPC通信支持,子进程和主进程之间可以方便的通信 支持标准输入输出重定向,子进程内echo,会发送到管道中,而不是输出屏幕 Class swoole_process

Summary

Methods
Properties
Constants
__construct()
write()
read()
_exit()
exec()
wait()
daemon()
useQueue()
push()
pop()
kill()
signal()
start()
name()
$pid
$pipe
No constants found
No protected methods found
No protected properties found
N/A
No private methods found
No private properties found
N/A

Properties

$pid

$pid : integer

进程的PID

Type

integer

$pipe

$pipe : integer

管道PIPE

Type

integer

Methods

__construct()

__construct(mixed  $callback, boolean  $redirect_stdin_stdout = false, boolean  $create_pipe = true) 

Parameters

mixed $callback

子进程的回调函数

boolean $redirect_stdin_stdout

是否重定向标准输入输出

boolean $create_pipe

是否创建管道

write()

write(string  $data) : integer

向管道内写入数据

Parameters

string $data

Returns

integer

read()

read(integer  $buffer_len = 8192) : string

从管道内读取数据

Parameters

integer $buffer_len

最大读取的长度

Returns

string

_exit()

_exit(integer  $code) : integer

退出子进程,实际函数名为exit,IDE将exit识别为关键词了,会有语法错误,所以这里叫_exit

Parameters

integer $code

Returns

integer

exec()

exec(string  $execute_file, array  $params) : boolean

执行另外的一个程序

Parameters

string $execute_file

可执行文件的路径

array $params

参数数组

Returns

boolean

wait()

wait() : false

阻塞等待子进程退出,并回收 成功返回一个数组包含子进程的PID和退出状态码 如array('code' => 0, 'pid' => 15001),失败返回false

Returns

false —

| array

daemon()

daemon(boolean  $nochdir = false, boolean  $noclose = false) 

守护进程化

Parameters

boolean $nochdir
boolean $noclose

useQueue()

useQueue(integer  $msgkey = -1, integer  $mode = 2) 

创建消息队列

Parameters

integer $msgkey

消息队列KEY

integer $mode

模式

push()

push(  $data) 

向消息队列推送数据

Parameters

$data

pop()

pop(integer  $maxsize = 8192) : string

从消息队列中提取数据

Parameters

integer $maxsize

Returns

string

kill()

kill(  $pid, integer  $sig = SIGTERM) 

向某个进程发送信号

Parameters

$pid
integer $sig

signal()

signal(integer  $signo, mixed  $callback) 

注册信号处理函数 require swoole 1.7.9+

Parameters

integer $signo
mixed $callback

start()

start() : integer

启动子进程

Returns

integer

name()

name(  $process_name) 

为工作进程重命名

Parameters

$process_name