当前位置: 首页 > news >正文

免费网站建设系统深圳网络推广软件

免费网站建设系统,深圳网络推广软件,蓝色风格企业网站模板,为什么电脑打开那个做网站都是那一个class SkipList class SkipList 是Level DB中的重要数据结构,存储在memtable中的数据通过SkipList来存储和检索数据,它有优秀的读写性能,且和红黑树相比,更适合多线程的操作。 SkipList SkipList还是一个比较简单的数据结构&a…

class SkipList

class SkipList 是Level DB中的重要数据结构,存储在memtable中的数据通过SkipList来存储和检索数据,它有优秀的读写性能,且和红黑树相比,更适合多线程的操作。

SkipList 

SkipList还是一个比较简单的数据结构,它首先是一个List(链表),读写操作也和List相差不大。SkipList的复杂之处是每一个Node有一个高度的信息,带有这个高度信息的Node,可以看成一个Node Array [Height],其中的Height小于或等于SkipList 的 Max Height,如图1所示。

                                                           图1. Max Height = 4 's SkipList

当我们需要往这个SkipList里面添加一个Node的时候,这个新的Node他有不同的概率得到Height,如图2所示,key = 7 的 node,它有probability(概率)= p ,height = 1,有probability(概率)= (1 - p) * p, height = 2,有probability(概率)= (1 - p)* (1 - p) * p, height = 3,最后,它有probability(概率)= 1 - other probability,height = 4。

图2. Max Height = 4 's SkipList insert key = 7

Level DB 中的实现

Level DB中实现了class SkipList,下面来梳理总结一下这个SkipList的一些特点。

原子操作

在操作上,Level DB中的SkipList的数据都采用了原子操作(且仅支持find 和 insert 不支持delete),例如std::atomic<Node*> next_,std::atomic<int> max_height_ ,由于这些原子操作,所以在多线程的情况下不再需要额外的mutex操作。

memory order

对于原子操作,memory order 是在多核处理器上,每一个CPU看到的不同的上下文的表征。在SkipList里面对于单纯的原子互斥操作使用了std::memory_order_relaxed。而SkipList并没有使用lock锁住一段代码,所以为了安全当读一个元素(Next操作),和已有的Node改变next的指针(SetNext),使用了std::memory_order_release 和 std::memory_order_acquire。也就是在读的时候要考虑到写的前序上下文都已经完成。

http://www.yidumall.com/news/22530.html

相关文章:

  • 家装效果图设计网站网站建设的基本流程
  • 烟台网站开发制作中文搜索引擎大全
  • 不正规网站制作谷歌优化怎么做
  • 做海报兼职网站seo岗位
  • 上海高端做网站网络销售哪个平台最好
  • 百度小程序可以根据网站的要求做吗sem技术培训
  • 橙子建站客服电话googleplay商店
  • 网站栏目划分怎么做汕头seo优化
  • 网站开发业务无锡百度推广平台
  • 南昌网站建设公司网站建设公司网站查询信息
  • 做外贸网站有哪些考研培训
  • 学校要建个网站应该怎么做百度网站收录
  • 武汉生活网seo云优化如何
  • 犀牛云做网站怎么样推广信息发布平台
  • 博客网站 做淘宝客太原seo代理商
  • 游戏抽奖网站用java怎么做新闻最近新闻10条
  • wordpress 优秀网站nba最新排名
  • 广西临桂建设局网站seo站长
  • 如何做旅游休闲网站免费引流推广方法
  • 郑州网站制作的公司网络营销大赛策划书
  • 做设计那些网站可以卖设计seo推广怎么做
  • 手机怎么做网站服务器深圳网络推广外包公司
  • 宁夏免费建个人网站网络优化工具
  • 网站开发 源代码如何制作网页设计
  • 佛山外贸企业网站建设网络营销理论基础
  • 合肥制作手机网站seo教程技术资源
  • 关于建立网站的申请企业官方网站怎么申请
  • 怎么建立免费个人网站seo是什么姓
  • 建设一个Web网站长春seo代理
  • 黑客网站教程微信营销平台有哪些