2020-11-27:go中,map的读流程是什么?

2023-07-12,

福哥答案2020-11-27:
[答案来自此链接:](https://www.bilibili.com/video/BV1Nr4y1w7aa?p=12)
源码位于runtime/map.go文件中的mapaccess1函数和mapaccess2函数。
value:=info["name"]
1.结合哈希因子和键name生成哈希值。
2.获取哈希值的后B位,并根据后B位的值来决定将此键值对存放到哪个桶中(bmap)。
3.确定桶之后,再根据key的哈希值计算出tophash(高8位),根据tophash和key去桶中查找数据。
当前桶如果没找到,则根据overflow再去溢出桶中找,均为找到则表示key不存在。

2020-11-27:go中,map的读流程是什么?的相关教程结束。

《2020-11-27:go中,map的读流程是什么?.doc》

下载本文的Word格式文档,以方便收藏与打印。