关于Netty的使用

如何在handler之间进行变量的传递?或者说有没有pipeline级别的全局变量可供 .addlast() 添加的所有handler访问?
我上网查netty3有个ctx.sendUpStream(),但是我用的netty4,有没有类似的方法呀?

我想用netty做与设备通讯的功能,包括接收报文和下发报文,然后现在情况是,所有的表数据都从一个设备走,也就是现在只有一个tcp连接,然后当建立连接,设备登陆成功之后,我向设备下发报文(至此是我们做的项目),(接下来是硬件那的运行步骤,我猜是这样的)设备收到报文后由设备向各个表发请求采集数据,表返回的数据被设备收集,设备再发给我们后端。
我想有的那个能在handler之间传递的变量是这个设备的设备号,因为我要根据设备号向数据库查和这个设备相连的表地址,然后再下发报文的时候把表地址加进去。

我在想分别弄一个下发报文的handler和一个接受回文的handler,之前这两个逻辑放到一起了,导致我在循环里设置thread.sleep(400)下发报文的时候,接受回文的方法被阻塞,直到下发循环完成之后,才开始从设备读数据,导致获取数据不全,也没法处理
handler分两部分之后,接受回文的部分会先拿一个登陆报文,获取设备编号,我要根据设备编号查出一堆表地址,然后发报文

没读懂你的逻辑 :joy:

:joy:我想想,emmmmmm,可能是我想解决问题太多了吧,我先一个一个上网查查吧

我想把接受回文和下发报文分开写应该怎么写呀?在一个channelpipeline里

我说错了。我理解成了 Channel之间的通信方法。
Handler之前的通信方法。可以用

ChannelHandlerContext.channe().attr(AttributeKey<T> key);