mirror of
https://github.com/golang/go
synced 2024-09-30 20:38:32 -06:00
runtime: convert local var ready at TestMemmoveAtomicity to atomic type
For #53821 Change-Id: I2487b8d18a4cd3fc6e64fbbb531419812bfe0f08 Reviewed-on: https://go-review.googlesource.com/c/go/+/427136 Run-TryBot: xie cui <523516579@qq.com> Reviewed-by: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Heschi Kreinick <heschi@google.com>
This commit is contained in:
parent
357b922517
commit
7d83d320c0
@ -244,23 +244,23 @@ func TestMemmoveAtomicity(t *testing.T) {
|
||||
dst[i] = nil
|
||||
}
|
||||
|
||||
var ready uint32
|
||||
var ready atomic.Uint32
|
||||
go func() {
|
||||
sp := unsafe.Pointer(&src[0])
|
||||
dp := unsafe.Pointer(&dst[0])
|
||||
atomic.StoreUint32(&ready, 1)
|
||||
ready.Store(1)
|
||||
for i := 0; i < 10000; i++ {
|
||||
Memmove(dp, sp, sz)
|
||||
MemclrNoHeapPointers(dp, sz)
|
||||
}
|
||||
atomic.StoreUint32(&ready, 2)
|
||||
ready.Store(2)
|
||||
}()
|
||||
|
||||
for atomic.LoadUint32(&ready) == 0 {
|
||||
for ready.Load() == 0 {
|
||||
Gosched()
|
||||
}
|
||||
|
||||
for atomic.LoadUint32(&ready) != 2 {
|
||||
for ready.Load() != 2 {
|
||||
for i := range dst {
|
||||
p := dst[i]
|
||||
if p != nil && p != &x {
|
||||
|
Loading…
Reference in New Issue
Block a user