17、Netty源码分析:AbstractUnsafe

NioServerSocketChannel的父类AbstractChannel调用newUnsafe方法创建AbstractNioUnsafenewUnsafe直接调用NioMessageUnsafe的无参构造函数创建实例,该构造函数是java默认的构造函数,过程如下:
*

NioMessageUnsafe的结构图如下:
*

NioMessageUnsafe的父类和接口都是Channel相应的内部类,其承担着channel网络相关的功能,比如读操作、写操作等。NioMessageUnsafe的参数如下:
*

NioMessageUnsafe进行读操作时会把数据读取到readBuf,当进行写操作时会把数据写到outboundBuffer,当进行flush操作时会把outboundBuffer的数据写到TCP的缓冲区,即发送数据。

NioMessageUnsafe的功能如下:
*

因为unsafe类在netty中算是比较底层的类,下一节开始我们开始分析它的方法。

版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: