东山明月

V1

2022/04/21阅读:13主题:蓝莹

2-4. 端口绑定

在注册完成selector之后,紧接着便是端口绑定,其总体流程如下所示:

1. doBind()

在创建channel、初始化channel以及注册selector之后,源码中到了端口绑定部分,如下图所示端口绑定最开始从doBind0开始,该方法之后会调用到AbstractChannel类中的bind()方法。

之后有一个doBind方法,进入该方法之后便可以看到调用jdk底层的端口绑定。

这里可以看到javaChannel().bind完成绑定,而javaChannel()则返回jdk底层创建出来的channel。

2. pipeline.fireChannelActive()

在完成端口绑定之后,netty需要做一个事件传播的事情。

此处代码一直往里面跟进,最后发现到了用户自定义的ServerHandler中。

之后跟着闪电侠的思路找到HeadContext.readIfIsAutoRead(),但是这块的逻辑没有理解。

分类:

后端

标签:

Java

作者介绍

东山明月
V1