Nio与Netty
jacobbbbbbbb
一个java学习者的学习笔记
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Netty组件源码解析(4)
SelectedSelectionKeySet 继承AbstractSet抽象类,已经select的NIO SelectionKey集合 final class SelectedSelectionKeySet extends AbstractSet<SelectionKey> { //Selectionkey数组 SelectionKey[] keys; //数组可读大小 int size; SelectedSelectionKeySet() {原创 2020-07-13 17:26:34 · 298 阅读 · 0 评论 -
Netty组件源码解析(3)
SingleThreadEventLoop 基于单线程的EventLoop抽象类,将Channel注册到EventLoop上 public abstract class SingleThreadEventLoop extends SingleThreadEventExecutor implements EventLoop { //默认任务队列最大数量 protected static final int DEFAULT_MAX_PENDING_TASKS = Math.max(16,原创 2020-07-12 14:25:05 · 209 阅读 · 0 评论 -
Netty组件源码解析(2)
三.EventLoop 类图 EventExecutor 继承EventExecutorGroup接口,事件执行器接口 public interface EventExecutor extends EventExecutorGroup { //返回自己 @Override EventExecutor next(); //当前线程所处的EventExecutorGroup EventExecutorGroup parent(); //当前线程是否在EventLoop线程中原创 2020-07-10 22:06:12 · 220 阅读 · 0 评论 -
Netty组件源码解析(1)
一.Bootstrap 这是Netty中的配置类,也是程序开始的组件。 AbstractBootstrap是BootStrap和ServerBootStrap的父类抽象类 public abstract class AbstractBootstrap<B extends AbstractBootstrap<B, C>, C extends Channel> implements Cloneable { @SuppressWarnings("unchecked") st原创 2020-07-10 12:30:16 · 214 阅读 · 0 评论 -
NIO组件源码解析
一.Channel public interface Channel extends Closeable { //判断此通道是否处于打开状态 public boolean isOpen(); //关闭此通道 public void close() throws IOException; } 四个主要的实现类: 1.SocketChannel,客户端发起TCP的Channel //客户端通道,主要两种方式可以创建SocketChannel,一种是打开一个SocketChannel并且连接原创 2020-07-08 21:55:56 · 191 阅读 · 0 评论
分享