菜鸡学习netty源码(五)—— EventLoop

ops/2024/10/18 22:31:02/

1.EventLoop的类关系图

2. EventExecutor

java">/*** 返回自身的对象* Returns a reference to itself.*/@OverrideEventExecutor next();/*** 获取所属的EventExecutorGroup* Return the {@link EventExecutorGroup} which is the parent of this {@link EventExecutor},*/EventExecutorGroup parent();/*** 当前线程是否在 EventLoop 线程中* Calls {@link #inEventLoop(Thread)} with {@link Thread#currentThread()} as argument*/boolean inEventLoop();/*** 指定线程是否是 EventLoop 线程* Return {@code true} if the given {@link Thread} is executed in the event loop,* {@code false} otherwise.*/boolean inEventLoop(Thread thread);/*** 创建一个 Promise 对象* Return a new {@link Promise}.*/<V> Promise<V> newPromise();/*** 创建一个 ProgressivePromise 对象* Create a new {@link ProgressivePromise}.*/<V> ProgressivePromise<V> newProgressivePromise();/*** 创建成功结果的 Future 对象* Create a new {@link Future} which is marked as succeeded already. So {@link Future#isSuccess()}* will return {@code true}. All {@link FutureListener} added to it will be notified directly. Also* every call of blocking methods will just return without blocking.*/<V> Future<V> newSucceededFuture(V result);/*** 创建异常的 Future 对象* Create a new {@link Future} which is marked as failed already. So {@link Future#isSuccess()}* will return {@code false}. All {@link FutureListener} added to it will be notified directly. Also* every call of blocking methods will just return without blocking.*/<V> Future<V> newFailedFuture(Throwable cause);

3.OrderedEventExecutor

java">public interface OrderedEventExecutor extends EventExecutor {
}

4. EventLoop

java">public interface EventLoop extends OrderedEventExecutor, EventLoopGroup {@OverrideEventLoopGroup parent();
}

5.AbstractEventExecutor

5.1构造函数

java">    protected AbstractEventExecutor() {this(null);}protected AbstractEventExecutor(EventExecutorGroup parent) {this.parent = parent;}


http://www.ppmy.cn/ops/36879.html

相关文章

Linux---软硬链接

软链接 我们先学习一下怎样创建软链接文件&#xff0c;指令格式为&#xff1a;ln -s 被链接的文件 生成的链接文件名 我们可以这样记忆&#xff1a;ln是link的简称&#xff0c;s是soft的简称。 我们在下面的图片中就是给test文件生成了一个软链接mytest&#xff1a; 我们来解…

【C语言】学习C语言

C语言简介 C语言是一门十分流行的编程语言&#xff0c;由美国贝尔实验室的 Dennis Ritchie 在 20 世纪 70 年代开发。 C语言具有高效、可移植、灵活、简单等特点&#xff0c;被广泛应用于操作系统、编译器、数据库、图形界面、嵌入式系统、网络通信、游戏等领域。 本文将带你…

学习《现代密码学——基于安全多方计算协议的研究》 第二章

目录 第2章 数学基数 2.1 预备知识 2.1.1 素数 2.1.2 模运算 2.1.3 群 【定义2-2】&#xff08;群的定义&#xff09; 【定义2-3】&#xff08;交换群&#xff09; 【定义2-4】&#xff08;单位元&#xff09; 【定义2-5】&#xff08;逆元&#xff09; 【定义2…

C++深度解析教程笔记4

C深度解析教程笔记4 第7课 - 函数参数的扩展实验-默认参数实验-从右提供的默认参数实验-默认值与占位参数结合小结 第8课 - 函数重载分析&#xff08;上&#xff09;实验-函数重载实验-有歧义的重载实验-重载函数是同一函数吗查看vs2010的obj文件的符号表 小结 第9课 - 函数重载…

systemctl开启自动启动特定docker服务

列出所有服务和状态 systemctl list-unit-files --typeservice | grep enabled开机启动docker容器 1.创建Docker启动脚本&#xff1a; 创建一个启动Docker容器的脚本&#xff0c;该脚本可以将Docker服务启动&#xff0c;并启动需要的特定容器。名为start_docker_containers.…

Go语言的切片(slice)和数组(array)有什么不同?

文章目录 数组&#xff08;Array&#xff09;示例代码数组的缺点 切片&#xff08;Slice&#xff09;示例代码切片的优点原因和解决方案 总结 在Go语言中&#xff0c;数组和切片&#xff08;slice&#xff09;都是用来存储一系列相同类型数据的集合&#xff0c;但它们之间存在一…

18、ESP32 ESP-NOW 点对点通信

ESP-NOW 是乐鑫自主研发的无连接通信协议&#xff0c;具有短数据包传输功能。该协议使多个设备能够以简单的方式相互通信。 ESP-NOW 功能 ESP-NOW 支持以下功能&#xff1a; 加密和未加密的单播通信;混合加密和未加密的对等设备;最多可携带 250 字节 的有效载荷;发送回调功能…

OceanBase 分布式数据库【信创/国产化】- OceanBase 配置项和系统变量概述

本心、输入输出、结果 文章目录 OceanBase 分布式数据库【信创/国产化】- OceanBase 配置项和系统变量概述前言OceanBase 数据更新架构OceanBase 配置项和系统变量概述配置项配置项分类配置项查询系统变量系统变量分类系统变量查询配置项与系统变量的区分OceanBase 分布式数据库…