mysql thd_MySQL源码阅读3-THD对象

这里用单独的一篇介绍THD对象,目前看来THD对象是线程处理用户语句请求的核心类。然而该类实在是太大了,单单类的定义就差不多有了3500行。因此,这里不能够完全理解透,所以介绍得也不会全。望谅解~

1. 简单说明

THD没有查找到具体是什么的缩写,具体的代码定义是在mysql-server-8.0/sql/sql_class.h中,官方代码说明文档是在下面链接中。https://dev.mysql.com/doc/dev/mysql-server/latest/classTHD.html​dev.mysql.com

这个类给的官方说明是:For each client connection we create a separate thread with THD serving as a thread/connection descriptor

暂且翻译为“线程描述类”(THread Descriptor)。

2. THD与类/结构的依赖图

该类与其他很多类都有直接或间接引用关系,具体的如下图所示(该图也不全,只是个人感觉比较重要的列出来了)。图中,空心三角箭头表示继承关系;实心四角箭头表示组合关系。THD相关类(有水印)

3. THD依赖类/结构分类

为了方便介绍,将与THD相关类分成以下几个部分,分类是按照个人理解分的,不一定正确:

3.1 父类/接口类

THD类继承三个父类,分别是MDL_context_owner,Query_arena,Open_tables_state。MDL_context_owner:抽象类,主要与Metadata Lock 拥有者相关的接口,包括元数据边界

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值