我可以唤醒因为调用DatagramSocket.receive()而阻塞的线程吗?

Ale*_*lex 5 java network-programming

我有一个阻塞UDP数据包的线程,我需要能够告诉它在接收超时发生之前忘记该数据包并做其他事情.有没有办法做到这一点?

JB *_*zet 3

使用 DatagramChannel 读取 UDP 数据包,并中断读取线程。根据 Thread.interrupt(和 DatagramChannel)的文档,读取操作将抛出 ClosedByInterruptException。