Ratchet send 无法使用该sleep
功能,我该如何解决?
这是我的代码:
$i = 0;
while($i < 180)
{
foreach ($this->clients as $client)
{
$client->send($res->asXML()."\0");
}
sleep(2);
$i++;
}
将 sleep() 与棘轮一起使用并不是一个好主意。相反,最好利用其现有的事件循环。
我不确定您到底要完成什么,但这是一个基本示例。我敢打赌,您将需要重新编写代码以适应这种不同的技术。
//Start the server
$server = IoServer::factory(
new WsServer($session),
$port,
$addr
);
//Attach the loop
$server->loop->addPeriodicTimer(2, function () {
$client->send($res->asXML()."\0");
});
资料来源: