Aerospike的bin内存管理--即列内存管理
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,1、内存申请函数调用write_master->write_master_dim->write_master_bin_ops->write_master_bin_ops_loop->as_bin_pa
千家信息网最后更新 2025年02月02日Aerospike的bin内存管理--即列内存管理
1、内存申请函数调用
write_master->write_master_dim->write_master_bin_ops
->write_master_bin_ops_loop->as_bin_particle_alloc_from_client:
该函数对as_bin_s->particle进行申请内存,并将相关bin属性和值load到
申请的内存中。
2、内存释放函数调用
as_record_done->as_record_destroy->as_record_clean_bins
->as_record_clean_bins_from
点击(此处)折叠或打开
- void as_record_clean_bins_from(as_storage_rd *rd, uint16_t from)
- {
- for (uint16_t i = from; i < rd->n_bins; i++) {
- //对每个bin进行释放
- as_bin *b = &rd->bins[i];
- if (as_bin_inuse(b)) {//bin state有效
- as_bin_particle_destroy(b, rd->ns->storage_data_in_memory);
- as_bin_set_empty(b);//设置bin的状态AS_BIN_STATE_UNUSED
- }
- }
- }
- void as_bin_particle_destroy(as_bin *b, bool free_particle)
- {
- if (as_bin_is_embedded_particle(b)) {
- b->particle = 0;//int、float类型没有申请空间,这里set 0即可
- }
- else if (b->particle) {
- if (free_particle) {
- particle_vtable[as_bin_get_particle_type(b)]->destructor_fn(b->particle);
- }
- //根据类型调用destructor函数,blob的调用blob_destruct,其实是cf_free(p)
- //释放了空间,将其set 0
- b->particle = 0;
- }
- }
内存
函数
空间
类型
管理
有效
属性
状态
并将
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
朱顺泉stata数据库
开机自动启动服务器管理器
电脑数据库干啥的
邺兴互联网科技有限公司
python数据库基础知识
海牛网服务器管理工具
语蝶互联网科技娄烦县有限公司
微试云企业版最新版服务器地址
荒野的召唤怎么看服务器名称
设计一个项目数据库系统
12138选号服务器异常
企业数据库整理
湖北安卓软件开发要多少钱
网络安全工程师怎么赚钱
平顶山软件开发哪家好
山西gps时钟同步服务器
仙桃市软件开发行业工资
网络安全与反诈
松江区专业软件开发平均价格
高校网络技术名师培育计划
服务器地址如何获取我的世界
数据库原理第四版PDF
x99装什么服务器系统
mysql嵌入式数据库
安全播出网络安全培训
开黑啦服务器链接
软件开发计费成本
通信网络安全运用
互联网安全公司斗象科技
网络安全ppt背景免费