写在前面
Netty 中资源处理的类要继承 ChannelHandlerAdapter
这里有三个方法我们比较关心
/**
* 当客户端和服务端TCP链路建立成功之后,
* Netty的NIO线程会调用channelActive方法,发送xxx信息的给服务端
* */
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
// 发送消息
ctx.writeAndFlush(firstMessage);
}
/**
* 当服务端返回应答消息时,channelRead()方法被调用
* */
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) {
// 处理服务器返回的信息msg
}
/**
* 发生异常时释放资源
* */
@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
// 释放资源
ctx.close();
}