Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用套接字发送字符串进行简单的基于回合的游戏通信。你的意见_Java_Multithreading_Sockets_Request_Multiplayer - Fatal编程技术网

Java 使用套接字发送字符串进行简单的基于回合的游戏通信。你的意见

Java 使用套接字发送字符串进行简单的基于回合的游戏通信。你的意见,java,multithreading,sockets,request,multiplayer,Java,Multithreading,Sockets,Request,Multiplayer,我正在开始一个基于回合的JAVA多人简单游戏 在开始之前,我想知道如何处理客户端和套接字之间的通信 因为我对插座不熟悉,所以我正在寻找简单的方法 我认为应该做的是:服务器为每个客户机创建一个线程,然后每个线程处理客户机请求。来自服务器的客户端请求和响应将以字符串形式出现 例如 客户端->移动15,12(客户端要求移动到x=15,y=12单元格) 服务器->确定(在检查此移动是否可行后,它表示玩家可以将其x和y状态更新为15和12。之后,它告诉其他客户端玩家x移动到15,12) 这是一个基于回合的

我正在开始一个基于回合的JAVA多人简单游戏

在开始之前,我想知道如何处理客户端和套接字之间的通信

因为我对插座不熟悉,所以我正在寻找简单的方法

我认为应该做的是:服务器为每个客户机创建一个线程,然后每个线程处理客户机请求。来自服务器的客户端请求和响应将以字符串形式出现

例如

客户端->移动15,12(客户端要求移动到x=15,y=12单元格)

服务器->确定(在检查此移动是否可行后,它表示玩家可以将其x和y状态更新为15和12。之后,它告诉其他客户端玩家x移动到15,12)

这是一个基于回合的游戏,所以稍微延迟并不是一个真正的问题

你认为这是一个好方法吗?或者这会给我带来大问题吗?还是有更简单的方法?我需要你的意见


谢谢。

感谢您的开始,这是一个非常有效的方法:)一旦你对网络概念有了透彻的了解,你可以看看高性能框架和事件驱动模型,而不是每个连接线程模型。好的,谢谢:)我将从这开始then@Sneh你能给我一个关于这些框架和驱动模型的链接吗?举个例子?我记不清这些是什么。请阅读JavaNIOSockets,以及Netty和Kryonet之类的框架。只有谷歌:)