为什么qmap使用skiplist而不是ob rb

我为什么QMap实现了skiplist数据结构而不是rb-tree? 有关于并发数据结构和跳过列表优点的非常有趣的SO线程,优点和缺点。 这确实是非常有意义的对话框,但是QMap不是线程安全的,它不会执行任何互斥锁,以便同步访问开箱即用。 它需要包装或子类。

对我来说,它不是简单的写“手工制作”滑雪列表而不是rb-tree,所以这也不是很明显。

在非线程安全的Qt容器的上下文中是否有任何kill特性?

Tnx提前。


我曾经想过,QMap被设计为线程安全的,因此被实现为基于跳过列表的字典。 显然这似乎不是原因。 它更简单:“可执行文件中的代码更少,每个节点的内存更少。”

事实上,QMap曾经是一个RB树。

资料来源:Qt季刊19,“联合容器”

链接地址: http://www.djcxy.com/p/11253.html

上一篇: why does qmap uses skiplist instead ob rb

下一篇: What has happened to the 32 and 33 kill signals?