- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 1,013 for _Gwaiting (0.21 sec)
-
src/runtime/coro.go
// If we can CAS ourselves directly from running to waiting, so do, // keeping the control transfer as lightweight as possible. gp.waitreason = waitReasonCoroutine if !gp.atomicstatus.CompareAndSwap(_Grunning, _Gwaiting) { // The CAS failed: use casgstatus, which will take care of // coordinating with the garbage collector about the state change. casgstatus(gp, _Grunning, _Gwaiting) } // Clear gp.m.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 19:09:18 UTC 2024 - 7.4K bytes - Viewed (0) -
src/runtime/preempt.go
// ownership of it by transitioning it to // _Gwaiting. if !casGFromPreempted(gp, _Gpreempted, _Gwaiting) { break } // We stopped the G, so we have to ready it later. stopped = true s = _Gwaiting fallthrough case _Grunnable, _Gsyscall, _Gwaiting: // Claim goroutine by setting scan bit. // This may race with execution or readying of gp.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 15.1K bytes - Viewed (0) -
src/runtime/tracestatus.go
case _Grunnable: tgs = traceGoRunnable case _Grunning, _Gcopystack: tgs = traceGoRunning case _Gsyscall: tgs = traceGoSyscall case _Gwaiting, _Gpreempted: // There are a number of cases where a G might end up in // _Gwaiting but it's actually running in a non-preemptive // state but needs to present itself as preempted to the // garbage collector. In these cases, we're not going to
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 15 17:03:35 UTC 2024 - 7.2K bytes - Viewed (0) -
src/runtime/runtime2.go
sudogcache *sudog // Central pool of available defer structs. deferlock mutex deferpool *_defer // freem is the list of m's waiting to be freed when their // m.exited is set. Linked through m.freelink. freem *m gcwaiting atomic.Bool // gc is waiting to run stopwait int32 stopnote note sysmonwait atomic.Bool sysmonnote note // safePointFn should be called on each P at the next GC
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 30 17:57:37 UTC 2024 - 47.9K bytes - Viewed (0) -
src/runtime/proc.go
// casgstatus(gp, oldstatus, Gcopystack), assuming oldstatus is Gwaiting or Grunnable. // Returns old status. Cannot call casgstatus directly, because we are racing with an // async wakeup that might come in from netpoll. If we see Gwaiting from the readgstatus, // it might have become Grunnable by the time we get to the cas. If we called casgstatus, // it would loop waiting for the status to go back to Gwaiting, which it never will. // //go:nosplit
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 17:58:53 UTC 2024 - 207.5K bytes - Viewed (0) -
src/runtime/mgcmark.go
if (status == _Gwaiting || status == _Gsyscall) && gp.waitsince == 0 { gp.waitsince = work.tstart } // scanstack must be done on the system stack in case // we're trying to scan our own stack. systemstack(func() { // If this is a self-scan, put the user G in // _Gwaiting to prevent self-deadlock. It may // already be in _Gwaiting if this is a mark
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Apr 18 21:25:11 UTC 2024 - 52.5K bytes - Viewed (0) -
src/runtime/debugcall.go
if trace.ok() { traceRelease(trace) } dropg() lock(&sched.lock) globrunqput(gp) unlock(&sched.lock) trace = traceAcquire() casgstatus(callingG, _Gwaiting, _Grunnable) if trace.ok() { trace.GoUnpark(callingG, 0) traceRelease(trace) } execute(callingG, true) }) } func debugCallWrap2(dispatch uintptr) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Apr 05 20:50:21 UTC 2024 - 7.1K bytes - Viewed (0) -
src/runtime/heapdump.go
switch status { default: print("runtime: unexpected G.status ", hex(status), "\n") throw("dumpgs in STW - bad status") case _Gdead: // ok case _Grunnable, _Gsyscall, _Gwaiting: dumpgoroutine(gp) } }) } func finq_callback(fn *funcval, obj unsafe.Pointer, nret uintptr, fint *_type, ot *ptrtype) { dumpint(tagQueuedFinalizer) dumpint(uint64(uintptr(obj)))
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 09 04:07:57 UTC 2024 - 17.6K bytes - Viewed (0) -
src/runtime/tracestack.go
// If the scan bit is set, assume we're the ones that acquired it. if status&_Gscan == 0 { // Use the trace status to check this. There are a number of cases // where a running goroutine might be in _Gwaiting, and these cases // are totally fine for taking a stack trace. They're captured // correctly in goStatusToTraceGoStatus. switch goStatusToTraceGoStatus(status, gp.waitreason) { case traceGoRunning, traceGoSyscall:
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 21 14:38:56 UTC 2024 - 11K bytes - Viewed (0) -
src/runtime/runtime-gdb.py
G_SCANRUNNABLE = G_SCAN+G_RUNNABLE G_SCANRUNNING = G_SCAN+G_RUNNING G_SCANSYSCALL = G_SCAN+G_SYSCALL G_SCANWAITING = G_SCAN+G_WAITING sts = { G_IDLE: 'idle', G_RUNNABLE: 'runnable', G_RUNNING: 'running', G_SYSCALL: 'syscall', G_WAITING: 'waiting', G_MORIBUND_UNUSED: 'moribund', G_DEAD: 'dead', G_ENQUEUE_UNUSED: 'enqueue', G_COPYSTACK: 'copystack', G_SCAN: 'scan',
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 10 12:59:20 UTC 2023 - 15.4K bytes - Viewed (0)