1.线程会阻塞到收到一个DatagramPacket
如果其它计算机之前已向本机发送udp包,是不是调用receive就立即能收到,还是该包已经丢失了?
不会收到,丢失了
2.同一个DatagramSocket可以用来接收和发送DatagramPacket

解决方案 »

  1.   

    那为什么向本机连续发送的几个包都没有丢失呢?我用的是
    udpsocket.setSoTimeout(100);
    while(true)
    {
      try
      {
        udpsocket.receive(dp);
      }
      catch(Exception e)
      {
      }
    }
    我想系统是不是把收到的包放在堆栈中?
    j2sdk文档没有说明这个问题啊
      

  2.   

    你向本机发送不经过网络,包当然不太可能丢失,所以肯定能收到啊。另你的代码
    udpsocket.receive(p);
    udpsocket.send(p);
    没有问题。