nio
文章平均质量分 97
柠檬楠
这个作者很懒,什么都没留下…
展开
-
Netty源码分析-服务端启动流程
作者: LemonNan原文地址: https://juejin.im/post/6890768117803253768/前言距离上一次写 Netty 源码解析已经过去了一年多时间了, 最近这段时间回顾 Netty 的源码,目前看的版本是 4.1.31, 跟最开始看的版本不太一样, 没记错应该是4.1.16(吧), 不过这并不妨碍我们阅读源码, 小版本的源码在主流程上的差别不会太大. 这次分析的源码是用 Netty 启动一个服务端的过程.流程说明从 Netty 官方给的 demo 中入手, 下.原创 2020-11-03 13:45:19 · 349 阅读 · 0 评论 -
Netty异步Future源码解读
作者: LemonNan本文地址: https://juejin.im/post/6844904021887565831说在前面本文的 Netty源码使用的是 4.1.31.Final 版本,不同版本会有一些差异.JDK Future在说Netty的异步Future之前,先简单介绍一下JDK自带的Future机制.首先先上一段代码public class JDKFuture { static ExecutorService executors = new ThreadPoolEx.原创 2020-09-03 22:58:03 · 501 阅读 · 0 评论 -
Netty使用及事件传递
本文地址: https://juejin.im/post/6844903985720229902Netty 使用首先到官网看一下Netty Server 和 Client的demo, https://netty.io/wiki/user-guide-for-4.x.html, 我用的是4.1.xx,一般来说不是大版本变更, 变化不会很大.下面是 Netty Server 的demo,跟官网的是一样的.public class Main { // 下面是一个接收线程, 3个worker线程.原创 2020-09-03 23:01:24 · 926 阅读 · 0 评论 -
Netty ByteBuf源码解析
作者: LemonNan原文链接: https://juejin.im/post/6844903983530655751Netty 的 ByteBuf 类型Pooled(池化)、Unpooled(非池化)Direct(直接缓冲区/堆外)、Heap(jvm堆内)unsafe(unsafe 调用的本地方法)、safe(一般也不会这么说, 这是相对于 unsafe, 指的jvm 堆内的操作)Netty 默认都会优先使用 unsafe 的实现池化/非池化(Pooled/Unpo.原创 2020-08-31 00:22:20 · 1465 阅读 · 0 评论 -
select、poll、信号驱动、epoll 学习笔记
select、poll、信号驱动、epoll 学习笔记select函数&结构int select(int maxfdpl, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);参数说明maxfdpl : 最大文件描述符号+1, 他的值必须设为比 三个文件描述符集中 所包含的 最大文件描述符大1. 实际上是要检查的文件描述符数量, 数组下标从0开始. 有了这个值, 就不用检查所有的描原创 2020-08-18 08:37:05 · 684 阅读 · 0 评论