其实hash哈希原理很简单,只是hash数值打散函数需要较复杂的算法而已,下面是我在task和pid之间怎么使用上hash表的,一个简单理解[gliethttp]:
使用hash表将task的pid打散到某个hash表项对应的短链中,这个短链上链接的所有task他们的hash值都是相等的,都等于该hash表项的索引值,之所以存在这样一个短链,是因为这些task通过hash计算后发现hash数值相等故而引起了冲突,所以该task就不能独享该hash表项,因此使用next、prev双向链表来链接这些冲突了的task们,不至于把谁丢掉,通过短链大家和平解决了冲突,很好的共享了同一个hash表项【gliethttp_20071108】
阅读(3148) | 评论(0) | 转发(0) |