- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 31 for lockedm (0.15 sec)
-
src/runtime/coro.go
casgstatus(gnext, _Gwaiting, _Grunnable) casgstatus(gnext, _Grunnable, _Grunning) } // Donate locked state. if locked { mp.lockedg.set(gnext) gnext.lockedm.set(mp) } // Release the trace locker. We've completed all the necessary transitions.. if trace.ok() { traceRelease(trace) } // Switch to gnext. Does not return. gogo(&gnext.sched)
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/export_debug_test.go
// will send SIGTRAP to thread ID tid. gp must be locked to its OS thread and // running. // // On success, InjectDebugCall returns the panic value of fn or nil. // If fn did not panic, its results will be available in args. func InjectDebugCall(gp *g, fn any, regArgs *abi.RegArgs, stackArgs any, tkill func(tid int) error, returnOnUnsafePoint bool) (any, error) { if gp.lockedm == 0 { return nil, plainError("goroutine not locked to thread")
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 5.1K bytes - Viewed (0) -
src/runtime/lock_sema.go
break } v = atomic.Loaduintptr(&l.key) if v&locked == 0 { continue Loop } } if v&locked != 0 { // Queued. Wait. semasleep(-1) i = 0 } } } } func unlock(l *mutex) { unlockWithRank(l) } // We might not be holding a p in this code. // //go:nowritebarrier func unlock2(l *mutex) { gp := getg() var mp *m
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 30 17:57:37 UTC 2024 - 6.8K bytes - Viewed (0) -
src/sync/mutex.go
// relation at all. // // [the Go memory model]: https://go.dev/ref/mem type Mutex struct { state int32 sema uint32 } // A Locker represents an object that can be locked and unlocked. type Locker interface { Lock() Unlock() } const ( mutexLocked = 1 << iota // mutex is locked mutexWoken mutexStarving mutexWaiterShift = iota // Mutex fairness. //
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 21:14:51 UTC 2024 - 8.4K bytes - Viewed (0) -
src/sync/rwmutex.go
race.Acquire(unsafe.Pointer(&rw.writerSem)) } return true } // Unlock unlocks rw for writing. It is a run-time error if rw is // not locked for writing on entry to Unlock. // // As with Mutexes, a locked [RWMutex] is not associated with a particular // goroutine. One goroutine may [RWMutex.RLock] ([RWMutex.Lock]) a RWMutex and then
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 21:14:51 UTC 2024 - 7.2K bytes - Viewed (0) -
internal/grid/muxserver.go
default: atomic.StoreInt64(&m.LastPing, time.Now().Unix()) return pongMsg{} } } // disconnect will disconnect the mux. // m.recvMu must be locked when calling this function. func (m *muxServer) disconnect(msg string, locked bool) { if debugPrint { fmt.Println("Mux", m.ID, "disconnecting. Reason:", msg) } if msg != "" {
Registered: Sun Jun 16 00:44:34 UTC 2024 - Last Modified: Fri Jun 07 15:51:52 UTC 2024 - 9.7K bytes - Viewed (0) -
src/internal/runtime/exithook/hooks.go
} var ( locked atomic.Int32 runGoid atomic.Uint64 hooks []Hook running bool // runtime sets these for us Gosched func() Goid func() uint64 Throw func(string) ) // Add adds a new exit hook. func Add(h Hook) { for !locked.CompareAndSwap(0, 1) { Gosched() } hooks = append(hooks, h) locked.Store(0) } // Run runs the exit hooks. //
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 24 16:41:13 UTC 2024 - 2.2K bytes - Viewed (0) -
src/runtime/lock_futex.go
// Sleep for an arbitrary-but-moderate interval to poll libc interceptors. ns = 10e6 } for atomic.Load(key32(&n.key)) == 0 { gp.m.blocked = true futexsleep(key32(&n.key), 0, ns) if *cgo_yield != nil { asmcgocall(*cgo_yield, nil) } gp.m.blocked = false } } // May run with m.p==nil if called from notetsleep, so write barriers // are not allowed. // //go:nosplit
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 30 17:57:34 UTC 2024 - 5.4K bytes - Viewed (0) -
src/internal/trace/testdata/testprog/stress.go
// blocked goroutines, LockOSThread, pipes, and GOMAXPROCS). //go:build ignore package main import ( "log" "net" "os" "runtime" "runtime/trace" "sync" "time" ) func main() { var wg sync.WaitGroup done := make(chan bool) // Create a goroutine blocked before tracing. wg.Add(1) go func() { <-done wg.Done()
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:48:18 UTC 2024 - 2.5K bytes - Viewed (0) -
src/internal/trace/testdata/generators/go122-syscall-steal-proc-sitting-in-syscall.go
g := t.Generation(1) // Steal proc from a goroutine that's been blocked // in a syscall the entire generation. b0 := g.Batch(trace.ThreadID(0), 0) b0.Event("ProcStatus", trace.ProcID(0), go122.ProcSyscallAbandoned) b0.Event("ProcSteal", trace.ProcID(0), testgen.Seq(1), trace.ThreadID(1)) // Status event for a goroutine blocked in a syscall for the entire generation. bz := g.Batch(trace.NoThread, 0)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 24 21:15:28 UTC 2024 - 946 bytes - Viewed (0)