2013-05-13 85 views
0

TCP Chatserver對併發服務使用輪詢方法。客戶端A不斷髮送大量數據。 Chatserver嘗試將客戶端A的數據發送到客戶端B和C.但是,客戶端B和C不從其讀取緩衝區讀取數據。聊天服務器,客戶端A,客戶端B和客戶端C的讀取和寫入緩衝區會發生什麼情況。 有兩種情況 1. Chatserver有阻塞套接字。 2. Chatserver有非阻塞套接字。Chatserver。在..時讀取緩衝區會發生什麼?

回答

0

如果您在談論TCP,接收方的套接字接收緩衝區會填滿,因此發送方的套接字發送緩衝區會填滿,因此發送方可能會被阻塞(處於阻止模式),或者返回-1,且errno == EAGAIN/EWOULDBLOCK處於非阻塞狀態模式。

如果你在談論UDP,數據報被丟棄。