我正在某个端口创建MulticastSocket,然后加入一个组。现在,只要广播插件,套接字就会继续接收数据包。 所以我在while循环中调用socket.receive,这总是正确的。现在我永远不会离开小组。但如果我终止我的程序,它会自动关闭套接字吗?我需要对此作一些澄清。
另外,如果我肯定需要离开该组并关闭套接字,我该如何实现呢?我尝试过使用addShutdownHook
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
public void run() {
System.out.println("Closing Broadcast Port");
multi.shutsocket();
}
}, "Shutdown-thread"));
但是由于一些奇怪的原因,它不起作用。