码迷,mamicode.com
首页 >  
搜索关键字:rehash    ( 85个结果
使用再哈希算法查找元素
使用再哈希算法查找元素: /* hash search, using rehash method if find k, return if not find, d=(d+step)%m, rehash find */ int SearchHash(HashTable H, KeyType k) { int d, d1, m; m = H.tableS...
分类:编程语言   时间:2014-12-23 22:41:24    阅读次数:414
HashMap多线程死循环问题
正如上篇文中所说,HashMap不是线程安全的,在被多线程共享操作时,会有问题,具体什么问题呢,一直没有个清晰的理解,今天写了个测试程序调了一下,才明白其中道理。 主要是多线程同时put时,如果同时触发了rehash操作,会导致HashMap中的链表中出现循环节点,进而使得后面get的时候,会死循环。【关于什么是rehash,读者可以自行去google了】 本文主要参考了:http://coo...
分类:编程语言   时间:2014-11-05 23:17:35    阅读次数:258
Linux的别名使用
直接定义别名编辑当前用户下的.bashrc 文件:vim ~/.bashrc添加别名为 lmysql 的命令语句 :alias lmysql='mysql -uroot -p -Dtest --default-character-set=utf8 --auto-rehash'使其立即生效 :sour...
分类:系统相关   时间:2014-10-16 15:05:02    阅读次数:367
Mnesia 实现分析
- linear hash ETS/DETS/mnesia 都使用了linear hash算法http://en.wikipedia.org/wiki/Linear_hashingredis dict 的实现类似于linear hash,渐进式rehash,保证操作是O(1)。不过除了每次操作时执行...
分类:其他好文   时间:2014-09-02 00:17:13    阅读次数:271
Redis的字典(dict)rehash过程源码解析
Redis的内存存储结构是个大的字典存储,也就是我们通常说的哈希表。Redis小到可以存储几万记录的CACHE,大到可以存储几千万甚至上亿的记录(看内存而定),这充分说明Redis作为缓冲的强大。Redis的核心数据结构就是字典(dict),dict在数据量不断增大的过程中,会遇到HASH(key)碰撞的问题,如果DICT不够大,碰撞的概率增大,这样单个hash 桶存储的元素会越来愈多,查询效率就...
分类:其他好文   时间:2014-05-01 21:56:59    阅读次数:398
85条   上一页 1 ... 7 8 9
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!