嘿,我正在用Java创建一个多人主题游戏。 我已经对服务器输入进行了多线程处理,现在我正在服务器发送东西。
我正在使用ObjectOutputStream发送对象,并且正在循环浏览已连接客户端的列表。 我的问题现在是:如果我需要对这些发送进行线程处理,或者我可以保留我的循环访问客户端列表的系统,而仅使用write()方法,或者该方法是否具有回调,那么互联网连接速度会变慢或发送问题被卡住或循环变慢了吗?
arr
并且客户端的send方法包含:
public void sendPacketToAllClients(JSONObject object) {
for(Client c:clients) {
c.sendPacket(object);
}
}
答案 0 :(得分:0)
您似乎在询问轮询与每个连接的线程。两者都是合法的方法。每个连接线程的方法需要花费更多的精力来实现,但是如果您的网络连接很慢,它将可以更好地扩展。但是,刚开始时不太可能。您以后可以随时进行重构。