首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Netty
订阅
鑫
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
Netty 源码解析(二):Netty 的 Channel
这节我们来看看 NioSocketChannel 是怎么和 JDK 底层的 SocketChannel 联系在一起的,它们是一对一的关系。NioServerSocketChannel 和 ServerSocketChannel 同理,也是一对一的关系。 newChannel()…
Netty 源码解析(八): 回到 Channel 的 register 操作
我们回到前面的 register0(promise) 方法,我们知道,这个 register 任务进入到了 NioEventLoop 的 taskQueue 中,然后会启动 NioEventLoop 中的线程,该线程会轮询这个 taskQueue,然后执行这个 register…
Netty 源码解析(七): NioEventLoop 工作流程
前面,我们在分析线程池的实例化的时候说过,NioEventLoop 中并没有启动 Java 线程。这里我们来仔细分析下在 register 过程中调用的 eventLoop.execute(runnable) 这个方法,这个代码在父类 SingleThreadEventExec…
Netty 源码解析(六): Channel 的 register 操作
接下来,我们来分析 Netty 中的线程池。Netty 中的线程池比较不好理解,因为它的类比较多,而且它们之间的关系错综复杂。看下图,感受下 NioEventLoop 类和 NioEventLoopGroup 类的继承结构:经过前面的铺垫,我们已经具备一定的基础了,我们开始来把…
Netty 源码解析(四): Netty 的 ChannelPipeline
我想很多读者应该或多或少都有 Netty 中 pipeline 的概念。前面我们说了,使用 Netty 的时候,我们通常就只要写一些自定义的 handler 就可以了,我们定义的这些 handler 会组成一个 pipeline,用于处理 IO 事件,这个和我们平时接触的 Fi…
Netty 源码解析(三): Netty 的 Future 和 Promise
Netty 中非常多的异步调用,所以在介绍更多 NIO 相关的内容之前,我们来看看它的异步接口是怎么使用的。 争取在看完本节后,读者能搞清楚上面的这几行划线部分是怎么走的。 关于 Future 接口,我想大家应该都很熟悉,用得最多的就是在使用 Java 的线程池 ThreadP…
Netty 源码解析(五): Netty 的线程池分析
接下来,我们来分析 Netty 中的线程池。Netty 中的线程池比较不好理解,因为它的类比较多,而且它们之间的关系错综复杂。看下图,感受下 NioEventLoop 类和 NioEventLoopGroup 类的继承结构: 这张图我按照继承关系整理而来,大家仔细看一下就会发现…
Netty系列之源码解析(一)
前言:本文将介绍Netty,Java平台上使用最广泛的 NIO 包,它是对JDK中的NIO实现的一层封装,让我们能更方便地开发NIO程序。其实,Netty 不仅仅是NIO吧,但是基本上大家都冲着NIO来的。 灯塔君感觉国内对于Netty的吹嘘是有点过了,主要是很多人靠它吃饭,要…
netty源码分析之pipeline(一)
1.以新连接创建为例,新连接创建的过程中创建channel,而在创建channel的过程中创建了该channel对应的pipeline,创建完pipeline之后,自动给该pipeline添加了两个节点,即ChannelHandlerContext,ChannelHandler…