在服务器端,我们使用
Socket server = serverSocket.accept();
创建一个套接字。创建套接字后,我们可以创建一个新线程来处理该套接字的输入/输出流。因此,如果有其他连接请求进入,我们可以回到侦听同一端口并创建新套接字的方法。由于我们已经在特定端口创建了ServerSocket,因此当然不能在该端口再次创建另一个ServerSocket。
因此,以我的理解,我是否可以得出结论,在服务器端,我们可以在一个端口下创建多个套接字?(类似于网络服务器的功能)
其实我的问题是,在客户端,当我们创建一个套接字时,我们可以指定我们要使用的本地端口。在该本地端口上成功创建客户端套接字后,我们可以将该端口重用于其他客户端套接字吗?该端口是否永久绑定到套接字,直到套接字关闭(或端口关闭)?由于客户端没有“监听”的概念,我们是否可以做与ServerSocket相同的操作(请参阅ServerSocket可以在一个端口下创建多个套接字)?
我非常困惑客户端如何处理端口和套接字,因为我正在将ServerSocket与客户端套接字进行比较。
请指出正确的方向,我知道我的想法是错误的。非常感谢。