1
0
mirror of https://github.com/golang/go synced 2024-09-24 11:10:12 -06:00

call osyield directly

This commit is contained in:
徐志强 2019-12-11 13:33:44 +08:00
parent a1a67e6312
commit 7a0aa25e55

View File

@ -1678,8 +1678,7 @@ func lockextra(nilokay bool) *m {
for {
old := atomic.Loaduintptr(&extram)
if old == locked {
yield := osyield
yield()
osyield()
continue
}
if old == 0 && !nilokay {
@ -1696,8 +1695,7 @@ func lockextra(nilokay bool) *m {
if atomic.Casuintptr(&extram, old, locked) {
return (*m)(unsafe.Pointer(old))
}
yield := osyield
yield()
osyield()
continue
}
}