突破Windows下select網絡模型64個連接的限制

在Windows使用select模型時,發現當連接數超過64個時,服務端完全接收不到數據,帶着疑惑跳轉到了fd_set的實現文件。
在這裏插入圖片描述
原來Windows在實現的過程中將fd_set的大小限制成了64個。
而通過觀察他的宏定義不難發現我們還是可以修改他的大小的,因爲只有FD_SETSIZE沒有定義的情況下,Windows纔會將FD_SETSIZE的大小設置爲64,所以只要我們在之前就將FD_SETSIZE定義一遍就可以突破64個的限制了
在這裏插入圖片描述
不過爲什麼在修改前當連接數超過64個時會接收不到數據,還望有知道的大佬告知一下!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章