84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
如果伺服器發送的資料總是超過了客戶端所能承受的一次性接收最大位元組數,客戶端怎樣才能判斷接收的資料已經完整而不用再執行socket_read的操作,伺服器傳回的資料有多個/ n組成。嘗試過用while循環來讀取伺服器的數據,但是運行有問題。
如果是短鏈接,用 socket_set_nonblock 將 socket 鏈接設置為非阻塞,然後循環執行 socket_read ,當返回值長度為0時跳出循環,接收結束(這種方式在有些情況下會出問題)。
最好是服務端指定資料長度,這樣不會出錯。
如果是短鏈接,用 socket_set_nonblock 將 socket 鏈接設置為非阻塞,然後循環執行 socket_read ,當返回值長度為0時跳出循環,接收結束(這種方式在有些情況下會出問題)。
最好是服務端指定資料長度,這樣不會出錯。