为什么epoll中的文件描述符数量没有限制,而select有限制

为什么epoll中的文件描述符数量没有限制,而select有限制,select,epoll,Select,Epoll,select、poll和epoll可以帮助我们实现高性能服务器 为什么poll和epoll中的文件描述符数量没有限制,而select有限制 Select在库中有一个硬编码为FD_SETSIZE的人工限制,通常为1024。涵盖c10k问题,并讨论每个方法选择、轮询、epoll、iocp等您能更具体一点吗?你指的是什么限额?您能否链接到指定您所谈论的限制的文档并引用这些文档?Linux限制了进程可以创建和使用的FD的数量。它不会影响epoll可以处理的FD数量??哦,会的。但是有一些方法可以提高li

select、poll和epoll可以帮助我们实现高性能服务器


为什么poll和epoll中的文件描述符数量没有限制,而select有限制

Select在库中有一个硬编码为FD_SETSIZE的人工限制,通常为1024。涵盖c10k问题,并讨论每个方法选择、轮询、epoll、iocp等

您能更具体一点吗?你指的是什么限额?您能否链接到指定您所谈论的限制的文档并引用这些文档?Linux限制了进程可以创建和使用的FD的数量。它不会影响epoll可以处理的FD数量??哦,会的。但是有一些方法可以提高linux允许的FD数量。但Select将始终将硬编码变量设置为1024。因此,如果您将限制提高到10000,Select仍将限制为1024。注意:您可以通过更改大小并重新编译内核来增加Select的上限,至少在linux中是这样。其他*尼克斯可能更难。一些IRC服务器软件提供了关于如何使用更大数量的linux重新编译以处理更多客户端的说明。