【发布时间】:2014-12-12 02:49:07
【问题描述】:
我学习Netty已经有一段时间了,从Netty的教程(MEAP book)中,几乎所有的例子都是基于一个固定的框架,比如EventLoop,Bootstrap,似乎只有实现channelPipeline 中的处理程序是我们真正应该关注的事情。
在这里,我想设计一个简单的国际象棋游戏,基于服务器/客户端模式,其中两个玩家在不同的计算机上。还有我想用Netty来传输的后台数据。(我只是想练习一下用netty)
在这样的游戏中,前端的 GUI 会检测到玩家放了一个棋子,然后对数据进行一些更改。然后,我需要将此数据传递给其他玩家。问题来了。
我不知道在这种情况下如何实现ChannelHandler,因为在大多数示例中,数据似乎不是由处理程序动态添加的。例如,数据是在通道处于活动状态时通过channelActive() 或其他方法创建的。所有这些方法都是由 Netty 自己自动调用的。
我认为唯一的方法是write()。不过好像实现了这个方法就得自己调用这个方法了,不知道哪里可以得到参数ChannelHandlerContext。
那么,如何解决这样的问题呢?
附言 我对java网络编程和Netty都不熟悉。我学到的所有东西都是基于这本书,我还没有读完。 :)
【问题讨论】:
标签: java network-programming netty