Accept() 函数出现问题 如果我的客户端数量超过 MAX_INT 怎么办?

joh*_*ohn 2 c c++ sockets networking

oraccept()函数accept4()返回一个整数,但如果我收到多个INT_MAX客户端连接,会发生什么?

Ted*_*gmo 8

会发生什么??

调用accept将会失败。INT_MAX然而,在您达到类似EMFILE “已达到每个进程打开文件描述符数量的限制”之类的信息之前,它很可能会失败。在Linux中。

事实上,这不太可能发生。当您关闭套接字时,已使用的文件描述符可以再次重复使用 - 并且您不太可能尝试在一台计算机上同时为大约 21 亿个客户端提供服务。

  • @约翰 不客气!为此,您需要一个更大的服务器公园并在所有服务器之间分担负载。 (2认同)