Ejemplo n.º 1
0
func StoreUintptr(addr *uintptr, val uintptr) {
	runtime.RaceSemacquire(&mtx)
	runtime.RaceRead(unsafe.Pointer(addr))
	*addr = val
	runtime.RaceRelease(unsafe.Pointer(addr))
	runtime.RaceSemrelease(&mtx)
}
Ejemplo n.º 2
0
Archivo: race.go Proyecto: h8liu/golang
func StorePointer(addr *unsafe.Pointer, val unsafe.Pointer) {
	_ = *addr
	runtime.RaceSemacquire(&mtx)
	runtime.RaceRead(unsafe.Pointer(addr))
	*addr = val
	runtime.RaceRelease(unsafe.Pointer(addr))
	runtime.RaceSemrelease(&mtx)
}
Ejemplo n.º 3
0
func Release(addr unsafe.Pointer) {
	runtime.RaceRelease(addr)
}
Ejemplo n.º 4
0
Archivo: race.go Proyecto: hfeeki/go
func StoreUint64(addr *uint64, val uint64) {
	runtime.RaceSemacquire(&mtx)
	*addr = val
	runtime.RaceRelease(unsafe.Pointer(addr))
	runtime.RaceSemrelease(&mtx)
}