我应该每次都调用socket.close()吗?

时间:2019-01-14 23:35:21

标签: java sockets network-programming

我在Java上实现了一个基本的同步应用程序。需要时,它可与大量消息交换和文件交换一起使用。 在交换中,我总是创建一个新的ServerSocket,接受连接,关闭serverSocket,交换完成后,关闭服务器端的套接字。对于没有serverSocket部分的客户端也是如此。 但是,由于我每次运行都交换大约10条消息,这是正确的做法吗?还是应该在它开始运行或完成时打开和关闭? 我这样做的原因是为了使交换更加安全。

这是服务器代码:

/**
* Calling this when I want to exchange something
*/
public void connect() {
    try {
         serverSocket = new ServerSocket(port);
         socket = serverSocket.accept();
         serverSocket.close();
         //Socket will be used for operations
     } catch (IOException e) {
     }
}

/**
* Calling this when exchange is done
*/
public void close() {
    try {
        socket.close();
    } catch (IOException e) {
    }
}

0 个答案:

没有答案