- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 24 for racerelease (0.14 sec)
-
src/runtime/race.go
// In terms of the C memory model, RaceRelease is equivalent to // atomic_store(memory_order_release). // //go:nosplit func RaceRelease(addr unsafe.Pointer) { racerelease(addr) } // RaceReleaseMerge is like RaceRelease, but also establishes a happens-before // relation with the preceding RaceRelease or RaceReleaseMerge on addr. // // In terms of the C memory model, RaceReleaseMerge is equivalent to // atomic_exchange(memory_order_release). //
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 18:37:29 UTC 2024 - 20.4K bytes - Viewed (0) -
src/runtime/race0.go
func raceacquirectx(racectx uintptr, addr unsafe.Pointer) { throw("race") } func racerelease(addr unsafe.Pointer) { throw("race") } func racereleaseg(gp *g, addr unsafe.Pointer) { throw("race") } func racereleaseacquire(addr unsafe.Pointer) { throw("race") }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Oct 28 18:17:57 UTC 2021 - 2.8K bytes - Viewed (0) -
src/internal/race/race.go
package race import ( "runtime" "unsafe" ) const Enabled = true func Acquire(addr unsafe.Pointer) { runtime.RaceAcquire(addr) } func Release(addr unsafe.Pointer) { runtime.RaceRelease(addr) } func ReleaseMerge(addr unsafe.Pointer) { runtime.RaceReleaseMerge(addr) } func Disable() { runtime.RaceDisable() } func Enable() { runtime.RaceEnable() }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Oct 19 23:33:27 UTC 2023 - 881 bytes - Viewed (0) -
src/runtime/proflabel.go
// This would more properly use &getg().labels as the sync address, // but we do the read in a signal handler and can't call the race runtime then. // // This uses racereleasemerge rather than just racerelease so // the acquire in profBuf.read synchronizes with *all* prior // setProfLabel operations, not just the most recent one. This // is important because profBuf.read will observe different
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 29 16:25:21 UTC 2024 - 2.1K bytes - Viewed (0) -
src/runtime/trace.go
tl.Gomaxprocs(gomaxprocs) traceRelease(tl) } // Emit a GCActive event in the new generation if necessary. // // It's important that we do this before allowing stop-the-worlds again, // because that could emit global GC-related events. if !stopTrace && (gcphase == _GCmark || gcphase == _GCmarktermination) { tl := traceAcquire() tl.GCActive() traceRelease(tl) }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 22 21:17:41 UTC 2024 - 37.1K bytes - Viewed (0) -
src/runtime/chan.go
// those addresses, and we don't want them racing with // operations like close(). return unsafe.Pointer(&c.buf) } func racesync(c *hchan, sg *sudog) { racerelease(chanbuf(c, 0)) raceacquireg(sg.g, chanbuf(c, 0)) racereleaseg(sg.g, chanbuf(c, 0)) raceacquire(chanbuf(c, 0)) } // Notify the race detector of a send or receive involving buffer entry idx // and a channel c or its communicating partner sg.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 23 01:16:50 UTC 2024 - 25.9K bytes - Viewed (0) -
src/runtime/type.go
} func reflectOffsLock() { lock(&reflectOffs.lock) if raceenabled { raceacquire(unsafe.Pointer(&reflectOffs.lock)) } } func reflectOffsUnlock() { if raceenabled { racerelease(unsafe.Pointer(&reflectOffs.lock)) } unlock(&reflectOffs.lock) } // resolveNameOff should be an internal detail, // but widely used packages access it using linkname.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 23 01:17:26 UTC 2024 - 12.7K bytes - Viewed (0) -
src/runtime/syscall_windows.go
// until then. if raceenabled && mainStarted { raceacquire(unsafe.Pointer(&cbs.lock)) } } func cbsUnlock() { if raceenabled && mainStarted { racerelease(unsafe.Pointer(&cbs.lock)) } unlock(&cbs.lock) } // winCallback records information about a registered Go callback. type winCallback struct { fn *funcval // Go function
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 22 20:12:46 UTC 2024 - 16.6K bytes - Viewed (0) -
src/runtime/metrics.go
semacquire1(&metricsSema, true, 0, 0, waitReasonSemacquire) if raceenabled { raceacquire(unsafe.Pointer(&metricsSema)) } } func metricsUnlock() { if raceenabled { racerelease(unsafe.Pointer(&metricsSema)) } semrelease(&metricsSema) } // initMetrics initializes the metrics map if it hasn't been yet. // // metricsSema must be held. func initMetrics() { if metricsInit {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 08 21:03:13 UTC 2024 - 26K bytes - Viewed (0) -
src/runtime/time.go
//go:linkname newTimer time.newTimer func newTimer(when, period int64, f func(arg any, seq uintptr, delay int64), arg any, c *hchan) *timeTimer { t := new(timeTimer) t.timer.init(nil, nil) t.trace("new") if raceenabled { racerelease(unsafe.Pointer(&t.timer)) } if c != nil { lockInit(&t.sendLock, lockRankTimerSend) t.isChan = true c.timer = &t.timer if c.dataqsiz == 0 { throw("invalid timer channel: no capacity") }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Mar 29 14:36:24 UTC 2024 - 37.5K bytes - Viewed (0)