mirror of
https://github.com/golang/go
synced 2024-10-04 14:21:21 -06:00
d2ab2b9f42
Use atomic.LoadUint32(&done) instead of atomic.AddInt32(&done, 0) on fast path. benchmark old ns/op new ns/op delta BenchmarkOnce 13.40 7.26 -45.82% BenchmarkOnce-2 22.90 4.04 -82.36% BenchmarkOnce-4 25.60 2.16 -91.56% BenchmarkOnce-8 25.80 1.38 -94.65% BenchmarkOnce-16 24.40 1.33 -94.55% (on HP Z600, 2 x Intel Xeon E5620, 8 HT cores, 2.4 GHz) R=golang-dev, rsc CC=golang-dev https://golang.org/cl/4787041 |
||
---|---|---|
.. | ||
atomic | ||
cond_test.go | ||
cond.go | ||
Makefile | ||
mutex_test.go | ||
mutex.go | ||
once_test.go | ||
once.go | ||
rwmutex_test.go | ||
rwmutex.go | ||
waitgroup_test.go | ||
waitgroup.go |