![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leveldb
weixin_37924880
这个作者很懒,什么都没留下…
展开
-
levelDB之内存碎片和Arena
什么是内存碎片?在内存单元100的起始地址到内存单元200之间,一共申请了100块1字节的区域,但是释放的时候,先释放了内存地址为基数的单元,如释放101、103…而偶数单元不释放,释放50次后,虽然还有50字节的内存是空余的,但是如果下次要申请2字节的内存单元,是无法在100到200之间申请到的,因为这个区域没有连续的2字节空间,这就是内存碎片。内存碎片分为两种:内部碎片和外部碎片(...原创 2019-11-06 01:15:04 · 242 阅读 · 0 评论 -
LevelDB之LRUCaChe解析
背景:之前学过操作系统的都应该知道LRU Cache算法,即最近最少使用算法。算法的缘由是Cache的容量有限,不可能无限制的去存储数据,那么在容量用完又需要添加新的数据时,就需要在原cache当中选择一些数据清除掉,而我们选择的数据就是那些最近最少使用的数据(实际上在我看来,说是最久未使用算法更形象,因为该算法每次替换掉的就是一段时间内最久没有使用过的内容)技术实现:LRU一般的实现...原创 2019-08-08 22:47:13 · 887 阅读 · 0 评论