Netty 4-连接和排队消息的期望和策略是什么

Netty 4-连接和排队消息的期望和策略是什么,netty,Netty,调用clientBootstrap.connect(主机,端口)时,如果在建立通道之前(即,如果在连接通道之前调用channel.write(message)),我可以向该主机/端口发出大量请求,则预计: 1) Netty 4将在内部对该消息进行排队,一旦连接,我只需调用flush?我有这个期望,但不是为我工作,所以我想确认一下。如果这是我的期望,我可以分享一些代码 或 2) 是指我自己需要跟踪连接状态并对这些消息进行排队,并且只有在我知道连接建立后才需要自己调用writeMessage() 或

调用clientBootstrap.connect(主机,端口)时,如果在建立通道之前(即,如果在连接通道之前调用channel.write(message)),我可以向该主机/端口发出大量请求,则预计:

1) Netty 4将在内部对该消息进行排队,一旦连接,我只需调用flush?我有这个期望,但不是为我工作,所以我想确认一下。如果这是我的期望,我可以分享一些代码

2) 是指我自己需要跟踪连接状态并对这些消息进行排队,并且只有在我知道连接建立后才需要自己调用writeMessage()

3) 其他策略


提前谢谢。

未连接write之前,您不能呼叫write。如果您这样做,则通道Future将以NotYetConnectedException失败

根据我对代码的理解,该行为与4.1.0.Beta5中的上述答案不同。写入方法将不会检查通道现在是否处于活动状态,检查将移动到刷新方法。但是,在注册通道之前,我们仍然无法写入,因为您的处理程序可能尚未添加到管道中


我不知道为什么netty必须这样,也许netty可以在连接之前用build()方法构建管道。因此,用户只需使用netty的内部队列,无需创建另一个队列。

谢谢Norman。我确认这正是我所看到的,所以我将在我所在的层处理这个案件。