我正在构建一个侦听TCP和UDP的应用程序,而且我的关机机制遇到了一些问题.当我调用Thread.interrupt()
每个侦听线程时,TCP线程被中断而不是监听,而UDP侦听器则没有.具体来说,TCP线程使用ServerSocket.accept()
,它只返回(没有实际连接).UDP线程使用DatagramSocket.receive()
,但不退出该方法.
这是我的JRE,我的操作系统中的问题,还是应该切换到(Datagram)Socket.close()
?
更新:我发现了对问题的分析.它确认行为不一致.