Heim >Backend-Entwicklung >PHP-Tutorial >php swoole 如何不让代码停在start()这里?

php swoole 如何不让代码停在start()这里?

WBOY
WBOYOriginal
2016-06-06 20:13:411294Durchsuche

<code>        $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在一个线程里监听着</code>

回复内容:

<code>        $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在一个线程里监听着</code>

开一个子进程去启动server就好了

官网有例子 在子进程中创建swoole_server

因为 start 里面已经开始事件循环了。你可以理解为这里面是死循环。

start以后就不应该有代码了

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn