<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Server->addProcess [TOC] 添加一個用戶自定義的工作進程。此函數通常用于創建一個特殊的工作進程,用于監控、上報或者其他特殊的任務。 ~~~ bool Server->addProcess(Process $process); ~~~ > 此函數在`1.7.9`以上版本可用 ## 參數 * `$process`為`Process`對象,注意不需要執行`start`。在`Server`啟動時會自動創建進程,并執行指定的子進程函數 * 創建的子進程可以調用`$server`對象提供的各個方法,如`getClientList`/`getClientInfo`/`stats` * 在`Worker/Task`進程中可以調用`$process`提供的方法與子進程進行通信 * 在用戶自定義進程中可以調用`$server->sendMessage`與`Worker/Task`進程通信 ## 返回值 添加成功返回`true`,失敗返回`false` ## 注意事項 * 用戶進程內不能使用`Server->task/taskwait`接口 * 用戶進程內可以使用`Server->send/close`等接口 * 用戶進程內應當進行`while(true)`或`EventLoop`循環,否則用戶進程會不停地退出重啟 ## 生命周期 用戶進程的生存周期與`Master`和`Manager`是相同的,不會受到`reload`影響 * 用戶進程不受`reload`指令控制,`reload`時不會向用戶進程發送任何信息 * 在`shutdown`關閉服務器時,會向用戶進程發送`SIGTERM`信號,關閉用戶進程 * 自定義進程會托管到`Manager`進程,如果發生致命錯誤,`Manager`進程會重新創建一個 ## 示例程序 ~~~ $server = new Swoole\Server('127.0.0.1', 9501); /** * 用戶進程實現了廣播功能,循環接收管道消息,并發給服務器的所有連接 */ $process = new Swoole\Process(function($process) use ($server) { while (true) { $msg = $process->read(); foreach($server->connections as $conn) { $server->send($conn, $msg); } } }); $server->addProcess($process); $server->on('receive', function ($serv, $fd, $reactor_id, $data) use ($process) { //群發收到的消息 $process->write($data); }); $server->start(); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看