在开始学习channel之前,先看下channel如何生成的?
channel如何生成?
AbstractBootstrap 通过channel方法来设置 channelFactory
public B channel(Class<? extends C> channelClass) {
if (channelClass == null) {
throw new NullPointerException("channelClass");
}
return channelFactory(new ReflectiveChannelFactory<C>(channelClass));
}
channel有哪些方法?
接着来看下抽象类AbstractChannel
大多数是pipeline来实现的,DefaultChannelPipeline