var (
netpollInitLock mutex
- netpollInited uint32
+ netpollInited atomic.Uint32
pollcache pollCache
netpollWaiters uint32
}
func netpollGenericInit() {
- if atomic.Load(&netpollInited) == 0 {
+ if netpollInited.Load() == 0 {
lockInit(&netpollInitLock, lockRankNetpollInit)
lock(&netpollInitLock)
- if netpollInited == 0 {
+ if netpollInited.Load() == 0 {
netpollinit()
- atomic.Store(&netpollInited, 1)
+ netpollInited.Store(1)
}
unlock(&netpollInitLock)
}
}
func netpollinited() bool {
- return atomic.Load(&netpollInited) != 0
+ return netpollInited.Load() != 0
}
//go:linkname poll_runtime_isPollServerDescriptor internal/poll.runtime_isPollServerDescriptor
import "runtime/internal/atomic"
-var netpollInited uint32
+var netpollInited atomic.Uint32
var netpollWaiters uint32
var netpollStubLock mutex
var netpollBroken bool
func netpollGenericInit() {
- atomic.Store(&netpollInited, 1)
+ netpollInited.Store(1)
}
func netpollBreak() {
}
func netpollinited() bool {
- return atomic.Load(&netpollInited) != 0
+ return netpollInited.Load() != 0
}
func doaddtimer(pp *p, t *timer) {
// Timers rely on the network poller, so make sure the poller
// has started.
- if netpollInited == 0 {
+ if netpollInited.Load() == 0 {
netpollGenericInit()
}