如何测试服务器支持的最大并发连接数?
更改服务端的I/O模型吧,这明显是服务端设计的问题。
你这样设计上线使用的话,服务器开销太大了(主要是线程切换的开销)。
//--------------------
Listen(socket,5),跟这个有一定关系。
int listen(int sockfd, int backlog); 第二个参数是你监听客户端的最大个数,如连接到主机上的客户端超过其数listen则会返回一个错误代号。
backlog你可以设置大一点,如100之类的。
建议使用I/O模型吧,不要使用建立新线程来处理。
(你使用建立新线程的话,会发现每个进程所建立的最大线程数量是有一个限制的)