DatagramChannel接收可能不会返回SocketAddress

时间:2018-05-02 22:15:45

标签: java nio datagram

根据Javadoc for DatagramChannel的接收方法:

public abstract SocketAddress receive(ByteBuffer dst)
                           throws IOException
如果DatagramChannel处于非阻塞模式,则

可能返回null。除了更改为阻塞模式之外,还有一种方法可以确保我获取我读取的数据的SocketAddress吗?

1 个答案:

答案 0 :(得分:1)

  如果DatagramChannel处于非阻塞模式,则

可能返回null。

Read on

  

如果此频道处于非阻止模式且没有数据报立即可用,则返回... null

如果返回null,则没有数据读取。情况对应于SocketChannel.read()返回零。