-
Dmitriy Vyukov authored
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
d2ab2b9f
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
atomic | ||
Makefile | ||
cond.go | ||
cond_test.go | ||
mutex.go | ||
mutex_test.go | ||
once.go | ||
once_test.go | ||
rwmutex.go | ||
rwmutex_test.go | ||
waitgroup.go | ||
waitgroup_test.go |