Netty 游戏服务器与游戏线程通信

Netty game server communicate with game thread

我使用 Netty 开发了一个游戏服务器,目前运行正常。但是内部结构不够好,目前服务器只是接收命令,处理并将结果返回给所有客户端。

我需要此服务器 运行 以 30 或 60 fps 的速度为每个游戏室提供一个单独的线程,以便它计算该房间所有帧的物理和运动。目前,客户计算所有运动,显然我有很多问题。我不能依赖客户...

问题是: 1) 我怎样才能 运行 我的游戏在某个给定的时刻与 Netty 线程分开?

2) 这个线程如何与Netty通信来处理传入的命令?

提前致谢!

开新帖跟netty关系不大

开始吧:

new Thread( yourRunnable ).start();

或使用 ExecutorService

ExecutorService executor = Executors.newSingleThreadExecutor( );
executor.submit( yourRunnable );

您的 Runnable 可能类似于 class,它会不断修改您的模型。要与 netty 通信...只需添加一个控制器 class,其中包含允许您操作模型的方法(getters、setters、您需要的任何方法),并在您从 netty 处理程序接收到命令时调用它客户.

注意并发修改;您可能需要一些同步点。