摘自Head first Java,第二版。
- 服务器创建一个新的套接字以与此客户端进行通信
Socket sock = serverSock.accept();
accept()
方法会阻止(坐在那里) 它正在等待客户端套接字连接。当一个 客户端最终尝试连接,方法返回 一个普通的旧Socket(在其他端口上),它知道 如何与客户沟通(即知道 客户的IP地址和端口号)。插座已开启 与ServerSocket不同的端口,因此 ServerSocket可以返回以等待其他客户端。
但是我最初的想法是服务器永远不会使用超过1个端口,因为例如,如果有100万用户尝试连接,那么如果在服务器端使用2个端口,则端口将用完。请向我解释这是如何工作的。谢谢!