不知是什么原因,UDP服务器每秒只能接收500个数据包。

解决方案 »

  1.   

    64字节以内,这还多,听说有人实现的UDP服务器可以收发27000个包/s。我机器配置也不差,p4 2.0的,512M内存,我单独写过一个最简单的UDP收发服务器,但也只能达到2000-3000个/s。是不是网卡太差的缘故,500个/s时CPU几乎100%。
      

  2.   

    程序里有BUG,cpu 100%说明你的处理逻辑有问题,每处理一个包耗费的资源太多了,或者是什么地方有死循环。如果cpu占用不高但收发速度很慢可能是icelight说的原因“把接收请求和处理请求的代码放在同一线程里了”造成的。
      

  3.   

    cpu 100%说明你程序写的有问题。
      

  4.   

    不过我用一台机器连续发送数据包,就是一个简单的发送程序。每秒也才1000多个包,而CPU几乎达到100%。
      

  5.   

    检查一下你的
    while(TRUE)里面! 100%一定要避免!