Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1899039
  • 博文数量: 211
  • 博客积分: 464
  • 博客等级: 下士
  • 技术积分: 3794
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-24 18:25
个人简介

阿弥陀佛

文章分类

全部博文(211)

文章存档

2020年(2)

2019年(3)

2018年(5)

2017年(6)

2016年(10)

2015年(9)

2014年(73)

2013年(90)

2012年(13)

分类: C/C++

2016-11-19 23:03:15

任何好的开源软件都有两面:一个是给新手提供的demo,另一个是自己内部支持的其他高级的接口。
例如leveldb如果只是初级用户只需要知道他提供给我们的存储接口。
当我们用这个工具去存储千万级配置时,只能去研究具体的原理,并调整各个参数。
Arena是leveldb的内存申请类。

当内存超过了最大的1000w时,直接换了一个新的表,arena通过将内存分块,一次性申请批量内存。当需要添加数据的时候再向arena申请数据。
所以他不需要free,等arena对象释放时统一释放。

skiplist  的特点是只允许有一个写者,可以有多个读者,每有一个读者,就会对变量进行Ref引用,避免数据被删除。


根据数据结构的特点,选择合适的STL,因为新加入的数据都是直接插入到最后,可以考虑使用vector插入?
阅读(1528) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

shenyanxxxy2016-12-14 23:48:34

什么时候变成_imm的时候很关键。