php swoole 如何不让代码停在start()这里?
程序员文章站
2022-03-07 17:27:36
...
$serv = new swoole_server($address, $port, SWOOLE_BASE, SWOOLE_SOCK_TCP);
$serv->on('Connect',
function (){
echo "!!!!!";
}
);
$serv->on('Receive',
function (){
echo "!!!!!";
}
);
$serv->on('Close',
function (){
echo "!!!!!";
}
);
echo "?????";
$serv->start();#停在这里
echo "?????";#打不出来,我还想干别的,只想让这个server在一个线程里监听着
回复内容:
$serv = new swoole_server($address, $port, SWOOLE_BASE, SWOOLE_SOCK_TCP);
$serv->on('Connect',
function (){
echo "!!!!!";
}
);
$serv->on('Receive',
function (){
echo "!!!!!";
}
);
$serv->on('Close',
function (){
echo "!!!!!";
}
);
echo "?????";
$serv->start();#停在这里
echo "?????";#打不出来,我还想干别的,只想让这个server在一个线程里监听着
开一个子进程去启动server就好了
官网有例子 在子进程中创建swoole_server
因为 start 里面已经开始事件循环了。你可以理解为这里面是死循环。
start以后就不应该有代码了