* * @brief: 创建一个新的map */
()
| 58 | * @brief: 创建一个新的map |
| 59 | */ |
| 60 | func NewConcurrentMap() *ConcurrentHashMap { |
| 61 | Map := ConcurrentHashMap{} |
| 62 | Map.ThreadSafeHashMap = make([]*ConcurrentMapShared, SHARD_COUNT) |
| 63 | for i := 0; i < SHARD_COUNT; i++ { |
| 64 | Map.ThreadSafeHashMap[i] = &ConcurrentMapShared{items: make(map[string]interface{})} |
| 65 | } |
| 66 | Map.NowKeyNumber = 0 |
| 67 | Map.BucketNumber = uint32(SHARD_COUNT) |
| 68 | |
| 69 | return &Map |
| 70 | } |
| 71 | |
| 72 | /* |
| 73 | * @brief: 利用key得到哈希表内的桶 |