本帖最后由 VisualEleven 于 2011-04-25 09:43:38 编辑

解决方案 »

  1.   

    UDP协议最大的好处就是简单、快速,按我的理解不需要什么selector吧~
    UDP服务器只是代开一个UDP端口进行监听,若正监听的IP和端口收到UDP包,则进行接收;
    UDP发送端只需要知道服务器的IP和端口,然后把包用数据报的形式发送出去即可,也不用管服务器能不能收到,因为UDP本身就是不安全的。你要是需要保证不丢包,可以选择RUDP或者TCP进行传输。
      

  2.   

    是不是因为线程2的socket绑定的IP、PORT和线程1中完全相同,才导致了这个现象?或者其他什么原因?
    -------------------------------------
    用新的PORT的,你的bind操作能成功?WSAGetLastError()
      

  3.   

    to roeast:
    肯定是采用UDP,这个已经无法变更。因为通信节点比较多,不用select只能用阻塞模式,需要起很多并发任务,对系统影响比较大。
    现在的主要问题是:通信节点比较多,对数据接收不够快的话肯定会导致丢包(和网络环境无关,网络环境很多)。to VisualEleven:
    确认已经BIND成功了