ServerSocket.close()。什么时候抛出异常?

时间:2014-11-04 02:31:02

标签: java exception-handling serversocket ioexception

我很长时间一直在想这个问题,而且我已经乖乖地抓住了任何可能引发ServerSocket.close()抛出的异常。但是,我没有看到它抛出异常。

Javadocs州:

Throws:
    IOException - if an I/O error occurs when closing the socket.

然而,正如我所说,我从未见过它会抛出异常。关闭serversocket时在什么情况下发生I / O错误?您可以假设手头的代码如下所示:

public void terminate() {
    try {
        serverSocket.close();
    } catch (IOException ex) {
        System.err.println(ex.getMessage()); // when and how?
    }
}

我在互联网上搜索了一个答案,但无法提出任何可以澄清这一点的内容。

1 个答案:

答案 0 :(得分:3)

如果套接字在您尝试关闭时已经关闭,则会抛出IOException