> go version
go version go1.10 darwin/amd64
> go test -v -race -count=5 .
=== RUN TestSyncAPI
==================
WARNING: DATA RACE
Read at 0x00c4200ca080 by goroutine 8:
_/Users/yanqing11/test/go/sync1.(*Pool).Put()
/Users/yanqing11/test/go/sync1/pool.go:108 +0xe8
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func2()
/Users/yanqing11/test/go/sync1/pool_test.go:18 +0x50
Previous write at 0x00c4200ca080 by goroutine 7:
_/Users/yanqing11/test/go/sync1.(*Pool).Put()
/Users/yanqing11/test/go/sync1/pool.go:109 +0x2ad
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func1()
/Users/yanqing11/test/go/sync1/pool_test.go:14 +0x5e
Goroutine 8 (running) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:17 +0x129
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
Goroutine 7 (finished) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:12 +0xfd
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
==================
==================
WARNING: DATA RACE
Write at 0x00c4200ca090 by goroutine 8:
_/Users/yanqing11/test/go/sync1.(*Pool).Put()
/Users/yanqing11/test/go/sync1/pool.go:115 +0x206
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func2()
/Users/yanqing11/test/go/sync1/pool_test.go:18 +0x50
Previous read at 0x00c4200ca090 by goroutine 7:
_/Users/yanqing11/test/go/sync1.(*Pool).Get()
/Users/yanqing11/test/go/sync1/pool.go:141 +0x1ee
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func1()
/Users/yanqing11/test/go/sync1/pool_test.go:13 +0x38
Goroutine 8 (running) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:17 +0x129
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
Goroutine 7 (finished) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:12 +0xfd
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
==================
==================
WARNING: DATA RACE
Read at 0x00c4200ce000 by goroutine 9:
_/Users/yanqing11/test/go/sync1.(*Pool).getSlow()
/Users/yanqing11/test/go/sync1/pool.go:175 +0x17a
_/Users/yanqing11/test/go/sync1.(*Pool).Get()
/Users/yanqing11/test/go/sync1/pool.go:148 +0x243
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func3()
/Users/yanqing11/test/go/sync1/pool_test.go:23 +0x38
Previous write at 0x00c4200ce000 by goroutine 8:
_/Users/yanqing11/test/go/sync1.(*Pool).Put()
/Users/yanqing11/test/go/sync1/pool.go:115 +0x1c6
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func2()
/Users/yanqing11/test/go/sync1/pool_test.go:18 +0x50
Goroutine 9 (running) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:22 +0x155
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
Goroutine 8 (finished) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:17 +0x129
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
==================
--- FAIL: TestSyncAPI (0.00s)
testing.go:730: race detected during execution of test
=== RUN TestSyncAPI2
--- PASS: TestSyncAPI2 (0.00s)
=== RUN TestSyncAPI
--- PASS: TestSyncAPI (0.00s)
=== RUN TestSyncAPI2
--- PASS: TestSyncAPI2 (0.00s)
=== RUN TestSyncAPI
--- PASS: TestSyncAPI (0.00s)
=== RUN TestSyncAPI2
--- PASS: TestSyncAPI2 (0.00s)
=== RUN TestSyncAPI
==================
WARNING: DATA RACE
Read at 0x00c42010a380 by goroutine 36:
_/Users/yanqing11/test/go/sync1.(*Pool).Get()
/Users/yanqing11/test/go/sync1/pool.go:136 +0x5c
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func3()
/Users/yanqing11/test/go/sync1/pool_test.go:23 +0x38
Previous write at 0x00c42010a380 by goroutine 34:
_/Users/yanqing11/test/go/sync1.(*Pool).Put()
/Users/yanqing11/test/go/sync1/pool.go:109 +0x2ad
_/Users/yanqing11/test/go/sync1.TestSyncAPI.func1()
/Users/yanqing11/test/go/sync1/pool_test.go:14 +0x5e
Goroutine 36 (running) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:22 +0x155
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
Goroutine 34 (finished) created at:
_/Users/yanqing11/test/go/sync1.TestSyncAPI()
/Users/yanqing11/test/go/sync1/pool_test.go:12 +0xfd
testing.tRunner()
/Users/yanqing11/dev/go/src/testing/testing.go:777 +0x16d
==================
--- FAIL: TestSyncAPI (0.00s)
testing.go:730: race detected during execution of test
=== RUN TestSyncAPI2
--- PASS: TestSyncAPI2 (0.00s)
=== RUN TestSyncAPI
--- PASS: TestSyncAPI (0.00s)
=== RUN TestSyncAPI2
--- PASS: TestSyncAPI2 (0.00s)
FAIL
FAIL _/Users/yanqing11/test/go/sync1 0.025s