runtime.schedt.nmspinning (field)
17 uses
runtime (current package)
proc.go#L2304: if int32(atomic.Xadd(&sched.nmspinning, -1)) < 0 {
proc.go#L2378: if atomic.Load(&sched.nmspinning)+atomic.Load(&sched.npidle) == 0 && atomic.Cas(&sched.nmspinning, 0, 1) { // TODO: fast atomic
proc.go#L2430: if atomic.Load(&sched.nmspinning) != 0 || !atomic.Cas(&sched.nmspinning, 0, 1) {
proc.go#L2495: if int32(atomic.Xadd(&sched.nmspinning, -1)) < 0 {
proc.go#L2622: if !_g_.m.spinning && 2*atomic.Load(&sched.nmspinning) >= procs-atomic.Load(&sched.npidle) {
proc.go#L2627: atomic.Xadd(&sched.nmspinning, 1)
proc.go#L2773: if int32(atomic.Xadd(&sched.nmspinning, -1)) < 0 {
proc.go#L2788: atomic.Xadd(&sched.nmspinning, 1)
proc.go#L2852: atomic.Xadd(&sched.nmspinning, 1)
proc.go#L2906: atomic.Xadd(&sched.nmspinning, 1)
proc.go#L2969: nmspinning := atomic.Xadd(&sched.nmspinning, -1)
proc.go#L5305: if runqempty(_p_) && atomic.Load(&sched.nmspinning)+atomic.Load(&sched.npidle) > 0 && pd.syscallwhen+10*1000*1000 > now {
proc.go#L5396: print("SCHED ", (now-starttime)/1e6, "ms: gomaxprocs=", gomaxprocs, " idleprocs=", sched.npidle, " threads=", mcount(), " spinningthreads=", sched.nmspinning, " idlethreads=", sched.nmidle, " runqueue=", sched.runqsize)
proc.go#L6137: if i >= active_spin || ncpu <= 1 || gomaxprocs <= int32(sched.npidle+sched.nmspinning)+1 {
runtime2.go#L742: nmspinning uint32 // See "Worker thread parking/unparking" comment in proc.go.
 |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |