select()最大套接字

ult*_*tus 5 c++ sockets select asynchronous

只是更异步的东西!

好吧,所以我现在有一个工作异步套接字程序用于我的主要聊天应用程序,它的工作非常好!不过我有一个问题..

使用select()时,我可以在每个集合中使用的文件描述符的最大数量是多少?我读过有关1024的限制......

如果该限制确实是硬编码的并且我不能将该限制FD_SETSIZE更高,那么一旦达到该限制,我是否应该生成另一个线程?或者是其他东西?这甚至是一个问题吗?

Mil*_*lan 9

是的,FD_SETSIZE的限制为1024.您可以通过查看select.h标头轻松检查.人们试图增加限制,但报告在一段时间后从"工作"变为"崩溃".如果您需要那么多连接,请poll改用.

一篇非常好的文章.