UDP 和线程 - Java
UDP and Threads - Java
我正在使用 UDP 通过线程进行通信,但我想创建某种变量以了解等待消息的线程是否等待时间过长。
是否有任何我可以使用的 UDP class 继承的方法?
还是让我自己的计时器与每个线程并行以保持时间是更好的选择?
问题:如果线程等待消息的时间过长,应该怎么办?
答:别等了!
您可能应该做的是在 DatagramSocket
上调用 setSoTimeout(int)
以在调用 receive(DatagramPacket)
之前设置超时。如果等待的时间超过超时时间,这将导致正在等待消息的线程获得 SocketTimeoutException
。
回答您的实际问题:
- 没有一个方法可以调用的内置方法来查看另一个线程等待消息的时间。
- 建立一个单独的计时器是可能的,但相当重量级
我正在使用 UDP 通过线程进行通信,但我想创建某种变量以了解等待消息的线程是否等待时间过长。
是否有任何我可以使用的 UDP class 继承的方法? 还是让我自己的计时器与每个线程并行以保持时间是更好的选择?
问题:如果线程等待消息的时间过长,应该怎么办?
答:别等了!
您可能应该做的是在 DatagramSocket
上调用 setSoTimeout(int)
以在调用 receive(DatagramPacket)
之前设置超时。如果等待的时间超过超时时间,这将导致正在等待消息的线程获得 SocketTimeoutException
。
回答您的实际问题:
- 没有一个方法可以调用的内置方法来查看另一个线程等待消息的时间。
- 建立一个单独的计时器是可能的,但相当重量级