我用Java编写套接字程序,有时会出现此错误。我有一些问题:
1)我使用Eclipse运行我的套接字应用程序并单击"终止"最后但有时仍会得到错误。为什么?
2)有没有办法以编程方式关闭端口?这样的事情:
if(isPortOpen(portNumber)) {
closePort(portNumber);
}
//// Run my app here
3)有没有办法避免此错误(在编程或操作系统中)?
答案 0 :(得分:2)
套接字选项SO_REUSEADDR可以帮助重用以前一直在使用的端口(一个程序在几秒钟之前终止)。
只需创建一个未连接的套接字,使用
socket.setReuseAddress(true);
在连接插座然后连接它之前。
答案 1 :(得分:1)