profilehz int32
spinning bool // m is out of work and is actively looking for work
blocked bool // m is blocked on a note
- inwb bool // m is executing a write barrier
newSigstack bool // minit on C thread called sigaltstack
printlock int8
incgo bool // m is executing a cgo call
}
type p struct {
- lock mutex
-
id int32
status uint32 // one of pidle/prunning/...
link puintptr
palloc persistentAlloc // per-P to avoid mutex
+ _ uint32 // Alignment for atomic fields below
+
// Per-P GC state
- gcAssistTime int64 // Nanoseconds in assistAlloc
- gcFractionalMarkTime int64 // Nanoseconds in fractional mark worker
- gcBgMarkWorker guintptr
+ gcAssistTime int64 // Nanoseconds in assistAlloc
+ gcFractionalMarkTime int64 // Nanoseconds in fractional mark worker (atomic)
+ gcBgMarkWorker guintptr // (atomic)
gcMarkWorkerMode gcMarkWorkerMode
// gcMarkWorkerStartTime is the nanotime() at which this mark