workerman一个http端口和一个tcp端口的交互,onMessage函数中提示了一个端口的worker对象未定义?

banice
$http_worker = new Worker("http://x.x.x.x:2345");
$tcp_worker = new Worker("tcp://x.x.x.x:2346");

$http_worker->onMessage = function($connection,$data)
{
 $connection->send($data);
 foreach($tcp_worker->connections as $con){
 $con->send("hello");
 }
};

Worker::runAll();

命令行提示tcp_worker未定义。这样的交互方式不行吗?
是要加global ?

2756 1 0
1个回答

walkor 打赏

两个worker是分离的,无法直接通讯。
可以用http://doc3.workerman.net/component/channel-examples.html来做进程间通讯,
也可以利http://doc3.workerman.net/worker-development/listen.html

年代过于久远,无法发表回答
×
🔝