我正在使用 ServerSocket 创建服务器。我必须为每个客户端创建一个新线程,或者仅使用服务器的线程是否可能&安全?
问问题
50 次
2 回答
1
如果您只使用服务器线程,您将只能在一段时间内管理一个客户端。我建议您使用Executors类来创建线程池。池线程可以管理多个连接,如ExecutorService javadoc 所示。
于 2013-07-22T20:03:50.333 回答
1
如果您只使用服务器的主线程,那么只有一个客户端能够连接,因为线程正忙于唯一连接的客户端。在该客户端断开连接后,服务器可以接受另一个客户端,但您希望能够不断地接受客户端。因此,您需要为每个客户端生成一个线程。
于 2013-07-22T20:02:26.020 回答