func (r *result) addStatistic(bucket int, stat statistic) {
if bucket > len(r.statBuckets)-1 {
newStatBuckets := make([]statistic, bucket+1)
copy(newStatBuckets, r.statBuckets)
r.statBuckets = newStatBuckets
}
s := r.statBuckets[bucket]
s.count += stat.count
s.time += stat.time
r.statBuckets[bucket] = s
}
这块代码感觉上会出现数据竞争问题,但测试却没有呢?
func (r *result) addStatistic(bucket int, stat statistic) {
if bucket > len(r.statBuckets)-1 {
newStatBuckets := make([]statistic, bucket+1)
copy(newStatBuckets, r.statBuckets)
r.statBuckets = newStatBuckets
}
s := r.statBuckets[bucket]
s.count += stat.count
s.time += stat.time
r.statBuckets[bucket] = s
}
这块代码感觉上会出现数据竞争问题,但测试却没有呢?