<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>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 創建同步TCP客戶端 [TOC] ## 程序代碼 client.php ~~~ $client = new swoole_client(SWOOLE_SOCK_TCP); //連接到服務器 if (!$client->connect('127.0.0.1', 9501, 0.5)) { die("connect failed."); } //向服務器發送數據 if (!$client->send("hello world")) { die("send failed."); } //從服務器接收數據 $data = $client->recv(); if (!$data) { die("recv failed."); } echo $data; //關閉連接 $client->close(); ~~~ 創建一個TCP的同步客戶端,此客戶端可以用于連接到我們第一個示例的TCP服務器。向服務器端發送一個`hello world`字符串,服務器會返回一個`Server: hello world`字符串。 這個客戶端是同步阻塞的,connect/send/recv 會等待IO完成后再返回。同步阻塞操作并不消耗CPU資源,IO操作未完成當前進程會自動轉入`sleep`模式,當IO完成后操作系統會喚醒當前進程,繼續向下執行代碼。 * `TCP`需要進行`3`次握手,所以`connect`至少需要`3`次網絡傳輸過程 * 在發送少量數據時`$client->send`都是可以立即返回的。發送大量數據時,`socket`緩存區可能會塞滿,`send`操作會阻塞。 * `recv`操作會阻塞等待服務器返回數據,`recv`耗時等于服務器處理時間+網絡傳輸耗時之和。 ## TCP通信過程 ![TCP通信](https://www.swoole.com/static/image/tcp_syn.png) ## 執行程序 ~~~ php client.php Server: hello world ~~~
                  <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>

                              哎呀哎呀视频在线观看