socket server select模型值得注意的地方

來源:互聯網
上載者:User

1)多個用戶端串連socket伺服器,怎麼區分是哪個用戶端串連的,換句話說,socket 怎麼和用戶端的ip一一對應?

SOCKADDR_IN clientAddr;

 int socketLen = sizeof(SOCKADDR_IN);

m_pListenSocket->Accept(*pClient,(SOCKADDR*)&clientAddr, &socketLen);

 unsigned long m_lIP;

m_lIP = clientAddr.sin_addr.S_un.S_addr;short m_nPort;m_nPort= clientAddr.sin_port;

 

2)Select 模型的最大串連數預設為64,可以修改Winsock2.h進行修改;

 #ifndef FD_SETSIZE
#define FD_SETSIZE      64
#endif /* FD_SETSIZE */

 

在上面這段代碼前面定義一個 #define FD_SETSIZE 1024 就可以將串連數改成1024了;

3)select 模型,伺服器如何檢測用戶端socket是否關閉?

通過FD_CLOSE

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.