求每分钟发5千以上TCP数据包的思路解决方案

求每分钟发5千以上TCP数据包的思路
目前,用线程池加原始socket第一分钟能有5000-7000个发出,2-3分钟过后,线程池满了,速度明显慢了,能有什么方法提高速度?(服务端能接收1万个, 每个数据包长度2K左右)

------解决方案--------------------
加快网速,使劲发。
------解决方案--------------------
关注。。。。
------解决方案--------------------
看socket的I/O模型,一般IOCP能达到最佳性能。
------解决方案--------------------
线程池满了发送速度就下降,有这个关系吗?
------解决方案--------------------
网络升级到 1G ,使用 4 CPU 机器测试。
------解决方案--------------------
多快的网卡?莫非是10M以太网卡?
------解决方案--------------------
线程池不可以动态增加么???再加上其他策略应该可以实现
------解决方案--------------------
IOCP
------解决方案--------------------
两个包之间延时1毫秒
或做个判断
------解决方案--------------------
“一定时器进行调度,每隔几毫秒。。。”
你应该用的是自己写的定时器吧。。。。如果你用的是 TIMER 的话,是精确不到几毫秒的。。。
------解决方案--------------------
什么定时器?有些没那么快的反应
------解决方案--------------------
探讨
我目前是先创建200个线程放入池中,一定时器进行调度,每隔几毫秒到池中取空闲的线程,取到后线程创建socket,然后 send, recv最后closesocket,
目前是运行几分钟后,200个线程忙活不过来,明显取空闲线程很少取到。
(目前空闲线程的判断是 在线程类中放一标志, 工作时设为false, 工作结束设为true, 没有用事件等内核对象)