了解了基本通信原理以后,我们再来思考一个问题,在前面的代码演示中,我们通过socket.accept去接收一个客户端请求,accept是一个阻塞的方法,意味着TCP服务器一次只能处理一个客户端请求,当一个客户端向一个已经被其他客户端占用的服务器发送连接请求时,虽然在连接建立后可以向服务端发送数据,但是在服务端处理完之前的请求之前,却不会对新的客户端做出响应,这种类型的服务器称为“迭代服务器”。迭代服务器是按照顺序处理客户端请求,也就是服务端必须要处理完前一个请求才能对下一个客户端的请求进行响应。但是在实际应用中,我们不能接收这样的处理方式。所以我们需要一种方法可以独立处理每一个连接,并且他们之间不会相互干扰。而Java提供的多线程技术刚好满足这个需求,这个机制使得服务器能够方便处理多个客户端的请求。