最近服务器程序。用的socket api
只接受连接什么事都不做。发现一个问题。
服务器只能接受3900多个Client端再多了就Accept不了了。开始怀疑是服务器程序写的有问题。
后来我打开本机的http服务和ftp服务。
模拟Client去连接80 或是 21端口发现还是3900快到4000左右的Client连接上后再有Client去连接就怎么也连接不上了。WSAGetLastError和GetLastError都得不到任何信息,真是奇怪。难道是win2k的限制?我用的win2k adv svr 我又怀疑是硬件限制,我的计算机C4-1.8 512MB-ddr.
后来我在p4-2G 1GB-DDR SCSI-36G硬盘 win2k adv svr 上测试还是快到4000就再也连接不上了。系统换成Win2003 server还是这样。
哎···没折了。大伙遇到过这问题吗。帮帮忙吧。

解决方案 »

  1.   

    问题是MS的HTTP Server也只能同时连接4000不到个Client。
    和我写的程序数值相差很小。都是4000不到一点3900多接近4000。
      

  2.   

    to: fantiyu(fantiyu) 
    是不是我的计算机设置或是硬件配置的什么问题。恳请赐教。
      

  3.   

    壮观了。
    4k个线程,呵呵……
    这里的大哥,都还没睡么。
    请赐教:
    http://expert.csdn.net/Expert/topic/2540/2540396.xml?temp=.6938898
      

  4.   

    请mysasina()大哥发一份用iocp做的程序到
      

  5.   

    请发一份给我好吗???[email protected]
    谢谢!
      

  6.   

    如果你每次accept是就创建一个新的socket,那在windows2000最多可以创建的Socket数为3973,我想只有这个原因了。