网友回复
swoole_process->write(string $data) 向进程的管道中写入数据
swoole_process->read(int $buffer_size = 8192) 从进程的管道中读取数据
示例代码如下:
<?php $serv = new Swoole\Server("0.0.0.0", 9503); $serv->set(array( 'worker_num' => 2, //worker process num )); //创建自定义进程 $process = new Swoole\Process(function($process) use ($serv) { //接受主进程的消息 while($data=$process->read(10)){ echo $data; } }); $serv->addProcess($process); Swoole\Timer::tick(3000, function () use($process) { //发送给子进程消息 $process->write("12312312\n") ; }); $serv->on('connect', function ($serv, $fd){ echo "客户端 ".$fd."连接成功 \n"; }); $serv->on('receive', function ($serv, $fd, $reactor_id, $data) { echo "客户端 ".$fd."发来消息:".$data."\n"; $serv->send($fd, 'Swoole已经介绍到您发送的消息: '.$data); }); $serv->on('close', function ($serv, $fd) { echo "客户端 {$fd}关闭连接\n"; }); $serv->start();