你的位置:首页 > 软件开发 > 数据库 > MySQL MEM_ROOT详细讲解

MySQL MEM_ROOT详细讲解

发布时间:2016-11-02 00:00:05
这篇文章会详细解说MySQL中使用非常广泛的MEM_ROOT的结构体,同时省去debug部分的信息,仅分析正常情况下,mysql中使用MEM_ROOT来做内存分配的部分。在具体分析之前我们先例举在该结构体使用过程中用到的一些宏:#define MALLOC_OVERHEAD 8 ...

MySQL MEM_ROOT详细讲解

这篇文章会详细解说MySQL中使用非常广泛的MEM_ROOT的结构体,同时省去debug部分的信息,仅分析正常情况下,mysql中使用MEM_ROOT来做内存分配的部分。

在具体分析之前我们先例举在该结构体使用过程中用到的一些宏:

#define MALLOC_OVERHEAD 8 //分配过程中,需要保留一部分额外的空间#define ALLOC_MAX_BLOCK_TO_DROP 4096 //后续会继续分析该宏的用途#define ALLOC_MAX_BLOCK_USAGE_BEFORE_DROP 10 //后续会继续分析该宏的用途#define ALIGN_SIZE(A) MY_ALIGN((A),sizeof(double))#define MY_ALIGN(A,L) (((A) + (L) - 1) & ~((L) - 1))#define ALLOC_ROOT_MIN_BLOCK_SIZE (MALLOC_OVERHEAD + sizeof(USED_MEM) + 8)/* Define some useful general macros (should be done after all headers). *//*作者:www.manongjc.com */#define MY_MAX(a, b) ((a) > (b) ? (a) : (b)) //求两个数值之间的最大值#define MY_MIN(a, b) ((a) < (b) ? (a) : (b)) //求两个数值之间的最小值

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:MySQL MEM_ROOT详细讲解

关键词:MYSQL

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。