- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
根据文档https://netty.io/3.6/api/org/jboss/netty/channel/ChannelEvent.html有 2 个上游事件改变 OPEN channel 的状态:
channelOpen (state = OPEN, value = true)
channelClosed (state = OPEN, value = false)
以及一个下游事件:
close (state = OPEN, value = false)
但是,我找不到任何有关上游channelOpen 和channelClosed 事件之间是否存在保证的一对一关系的文档。 IE。是否保证如果channelOpen事件被触发,则channelClosed事件也将被触发一次,无论哪一方(客户端或服务器)以及如何(优雅或不优雅)关闭套接字?
我想要实现的是一种限制应用程序中打开 channel 数量的机制。为了实现这一目标,我打算将 SimpleChannelHandler 的共享实例添加到每个 channel 管道中,并递增/递减计数器:
channelClosed 和channelOpen 方法:
https://netty.io/3.6/api/org/jboss/netty/channel/SimpleChannelHandler.html#channelOpen(org.jboss.netty.channel.ChannelHandlerContext,%20org.jboss.netty.channel.ChannelStateEvent) https://netty.io/3.6/api/org/jboss/netty/channel/SimpleChannelHandler.html#channelClosed(org.jboss.netty.channel.ChannelHandlerContext,%20org.jboss.netty.channel.ChannelStateEvent)
这种机制的实现方式是否正确?或者可能存在上游 ChannelClosed 事件未生成而需要检查下游事件的情况?
谢谢!
最佳答案
首先,netty 3.x 的生命周期将永远结束,因此您应该升级到 4.1.x。也就是说,一旦您收到打开
,您也会收到关闭
。
关于java - Netty 3 中的channelOpen 和channelClosed 上游事件是否存在一对一的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59382871/
我是一名优秀的程序员,十分优秀!