Search Options

Results per page
Sort
Preferred Languages
Advance

Results 11 - 20 of 246 for acquirem (0.16 sec)

  1. src/runtime/runtime1.go

    		return 0x7fffffff
    	}
    	if rem != nil {
    		*rem = int32(v)
    	}
    	return res
    }
    
    // Helpers for Go. Must be NOSPLIT, must only call NOSPLIT functions, and must not block.
    
    //go:nosplit
    func acquirem() *m {
    	gp := getg()
    	gp.m.locks++
    	return gp.m
    }
    
    //go:nosplit
    func releasem(mp *m) {
    	gp := getg()
    	mp.locks--
    	if mp.locks == 0 && gp.preempt {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:52:17 UTC 2024
    - 19.3K bytes
    - Viewed (0)
  2. src/runtime/export_test.go

    }
    
    var alwaysFalse bool
    var escapeSink any
    
    func Escape[T any](x T) T {
    	if alwaysFalse {
    		escapeSink = x
    	}
    	return x
    }
    
    // Acquirem blocks preemption.
    func Acquirem() {
    	acquirem()
    }
    
    func Releasem() {
    	releasem(getg().m)
    }
    
    var Timediv = timediv
    
    type PIController struct {
    	piController
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:50:53 UTC 2024
    - 46.1K bytes
    - Viewed (0)
  3. src/runtime/symtab.go

    	// tend to have the same recursive functions over and over,
    	// or repetitive stacks between goroutines.
    	var checkVal int32
    	var checkPC uintptr
    	ck := pcvalueCacheKey(targetpc)
    	{
    		mp := acquirem()
    		cache := &mp.pcvalueCache
    		// The cache can be used by the signal handler on this M. Avoid
    		// re-entrant use of the cache. The signal handler can also write inUse,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 40K bytes
    - Viewed (0)
  4. src/runtime/time.go

    	// has marked as idle with no timers, in which case the timer could
    	// go unnoticed until long after t.when.
    	// Calling acquirem instead of using getg().m makes sure that
    	// we end up locking and inserting into the current P's timers.
    	mp := acquirem()
    	ts := &mp.p.ptr().timers
    	ts.lock()
    	ts.cleanHead()
    	t.lock()
    	t.trace("maybeAdd")
    	when := int64(0)
    	wake := false
    	if t.needsAdd() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 29 14:36:24 UTC 2024
    - 37.5K bytes
    - Viewed (0)
  5. src/runtime/traceruntime.go

    //
    //go:nosplit
    func traceAcquireEnabled() traceLocker {
    	// Any time we acquire a traceLocker, we may flush a trace buffer. But
    	// buffer flushes are rare. Record the lock edge even if it doesn't happen
    	// this time.
    	lockRankMayTraceFlush()
    
    	// Prevent preemption.
    	mp := acquirem()
    
    	// Acquire the trace seqlock. This prevents traceAdvance from moving forward
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 25.7K bytes
    - Viewed (0)
  6. src/runtime/cgocall.go

    	restore = false
    }
    
    func unwindm(restore *bool) {
    	if *restore {
    		// Restore sp saved by cgocallback during
    		// unwind of g's stack (see comment at top of file).
    		mp := acquirem()
    		sched := &mp.g0.sched
    		sched.sp = *(*uintptr)(unsafe.Pointer(sched.sp + alignUp(sys.MinFrameSize, sys.StackAlign)))
    
    		// Do the accounting that cgocall will not have a chance to do
    		// during an unwind.
    		//
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 01:16:47 UTC 2024
    - 24.2K bytes
    - Viewed (0)
  7. src/runtime/mstats.go

    	noPLock mutex
    }
    
    // acquire returns a heapStatsDelta to be updated. In effect,
    // it acquires the shard for writing. release must be called
    // as soon as the relevant deltas are updated.
    //
    // The returned heapStatsDelta must be updated atomically.
    //
    // The caller's P must not change between acquire and
    // release. This also means that the caller should not
    // acquire a P or release its P in between. A P also must
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 08 21:03:13 UTC 2024
    - 34.2K bytes
    - Viewed (0)
  8. android/guava/src/com/google/common/util/concurrent/RateLimiter.java

       */
      @CanIgnoreReturnValue
      public double acquire() {
        return acquire(1);
      }
    
      /**
       * Acquires the given number of permits from this {@code RateLimiter}, blocking until the request
       * can be granted. Tells the amount of time slept, if any.
       *
       * @param permits the number of permits to acquire
       * @return time spent sleeping to enforce rate, in seconds; 0.0 if not rate-limited
    Registered: Wed Jun 12 16:38:11 UTC 2024
    - Last Modified: Tue Apr 04 09:45:04 UTC 2023
    - 18.2K bytes
    - Viewed (0)
  9. guava/src/com/google/common/util/concurrent/RateLimiter.java

       */
      @CanIgnoreReturnValue
      public double acquire() {
        return acquire(1);
      }
    
      /**
       * Acquires the given number of permits from this {@code RateLimiter}, blocking until the request
       * can be granted. Tells the amount of time slept, if any.
       *
       * @param permits the number of permits to acquire
       * @return time spent sleeping to enforce rate, in seconds; 0.0 if not rate-limited
    Registered: Wed Jun 12 16:38:11 UTC 2024
    - Last Modified: Tue Apr 04 09:45:04 UTC 2023
    - 21.5K bytes
    - Viewed (0)
  10. platforms/core-execution/persistent-cache/src/test/groovy/org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccessTest.groovy

        def "close when lock has never been acquired"() {
            when:
            cacheAccess.close()
    
            then:
            0 * _
        }
    
        def "acquires lock then runs action and retains lock on completion"() {
            def action = Mock(Supplier)
            def lock = Mock(FileLock)
    
            when:
    Registered: Wed Jun 12 18:38:38 UTC 2024
    - Last Modified: Tue Apr 16 15:49:51 UTC 2024
    - 21.8K bytes
    - Viewed (0)
Back to top