MYSQL原始碼分析1
MYSQL版本5.6.16
THD繼承於Statement,MDL_context_owner和Open_tables_state 位於sql_class.h中
THD:每一個客戶端連線時,建立一個獨立的執行緒,THD作為執行緒/連線描述符。
MDL_context_owner:待寫
Statement:對於一個連線中,一個獨立的命令執行簡短描述,一個連線中可能包含許多同時執行的命令狀態
THD作為這個狀態的部分,THD可以把修改完的狀態儲存到原來的Statement中。
Open_tables_state:儲存表的資訊,這些表可以被執行緒開啟和關閉,push_open_tables_state()/pop_open_table_state()開啟表和
關閉表。
Item_result_field繼承於Item用於儲存結果
Item_func繼承於Item_result_field類,mysql中的所有函式都是用Item_func類來表示的,Item **args和unit arg_count來表示函式引數
sql_parse.cc:在add_field_to_list()函式中建立新Item物件
mysqld.cc main()執行完之後,伺服器使用clean_up()清理所有Item物件
sys_var.cc與系統相關的Item
sql_class.cc中clean_after_query()
THD繼承於Statement,MDL_context_owner和Open_tables_state 位於sql_class.h中
THD:每一個客戶端連線時,建立一個獨立的執行緒,THD作為執行緒/連線描述符。
MDL_context_owner:待寫
Statement:對於一個連線中,一個獨立的命令執行簡短描述,一個連線中可能包含許多同時執行的命令狀態
THD作為這個狀態的部分,THD可以把修改完的狀態儲存到原來的Statement中。
Open_tables_state:儲存表的資訊,這些表可以被執行緒開啟和關閉,push_open_tables_state()/pop_open_table_state()開啟表和
關閉表。
Item_result_field繼承於Item用於儲存結果
Item_func繼承於Item_result_field類,mysql中的所有函式都是用Item_func類來表示的,Item **args和unit arg_count來表示函式引數
sql_parse.cc:在add_field_to_list()函式中建立新Item物件
mysqld.cc main()執行完之後,伺服器使用clean_up()清理所有Item物件
sys_var.cc與系統相關的Item
sql_class.cc中clean_after_query()
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29012686/viewspace-1129469/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 集合原始碼分析[1]-Collection 原始碼分析原始碼
- Mysql原始碼分析2MySql原始碼
- Leveldb原始碼分析--1原始碼
- 介面1原始碼分析原始碼
- linux原始碼分析1Linux原始碼
- 原始碼分析系列1:HashMap原始碼分析(基於JDK1.8)原始碼HashMapJDK
- MySQL • 原始碼分析 • SHUTDOWN過程MySql原始碼
- 【JDK】JDK原始碼分析-AbstractQueuedSynchronizer(1)JDK原始碼
- 3.21以太貓原始碼分析1原始碼
- 3.23 vchain原始碼分析1AI原始碼
- JDK 原始碼分析(1) Object類JDK原始碼Object
- AFL二三事 -- 原始碼分析 1原始碼
- EOS原始碼分析(1)安裝原始碼
- Architecture(1)AsyncTask原始碼分析原始碼
- 神奇的 BlocksKit(1):原始碼分析BloC原始碼
- 原始碼分析axios(1)~原始碼分析、模擬axios的建立原始碼iOS
- Android 原始碼分析之旅3 1 訊息機制原始碼分析Android原始碼
- k8s client-go原始碼分析 informer原始碼分析(1)-概要分析K8SclientGo原始碼ORM
- Java容器類框架分析(1)ArrayList原始碼分析Java框架原始碼
- newrelic python agent 原始碼分析-1Python原始碼
- 重拾RunLoop之原始碼分析1OOP原始碼
- rxjs 原始碼分析1-(fromEvent)JS原始碼
- web.py原始碼分析: 模板(1)Web原始碼
- LibRTMP原始碼分析 1:解析URL原始碼
- MySQL • 原始碼分析 • mysql認證階段漫遊MySql原始碼
- iOS開發原始碼閱讀篇--FMDB原始碼分析1(FMResultSet)iOS原始碼
- SQLMAP原始碼分析Part1:流程篇SQL原始碼
- SpringMVC原始碼分析1:SpringMVC概述SpringMVC原始碼
- Netty Pipeline原始碼分析(1)Netty原始碼
- Java集合乾貨1——ArrayList原始碼分析Java原始碼
- Retrofit原始碼分析三 原始碼分析原始碼
- MySQL • 原始碼分析 • 記憶體分配機制MySql原始碼記憶體
- 集合原始碼分析[2]-AbstractList 原始碼分析原始碼
- 集合原始碼分析[3]-ArrayList 原始碼分析原始碼
- Guava 原始碼分析之 EventBus 原始碼分析Guava原始碼
- [原始碼分析] Facebook如何訓練超大模型---(1)原始碼大模型
- Element原始碼分析系列1一Layout(佈局)原始碼
- 原始碼分析三:OkHttp(1)—總體架構原始碼HTTP架構