Jes*_*jan 15
如果我正确理解您的问题:您想要在服务器端侦听客户端通道关闭事件并进行一些会话清理,
在Netty中有两种方法可以监听频道关闭事件:
1)如果您的服务器处理程序扩展SimpleChannelHandler/SimpleChannelHandler,那么您可以覆盖以下方法并在那里编写会话清理逻辑
public void channelClosed(ChannelHandlerContext ctx, ChannelStateEvent e) throws Exception;
Run Code Online (Sandbox Code Playgroud)
2)如果您只能访问通道引用,那么您可以使通道关闭将来并ChannelFutureListener使用会话清理逻辑注册您的实现,
ChannelFuture closeFuture = channel.closeFuture();
closeFuture.addListener(new ChannelFutureListener() {
@Override
public void operationComplete(ChannelFuture future) throws Exception {
//session cleanup logic
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18347 次 |
| 最近记录: |