Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 3 of 3 for tryGetFast (0.1 sec)

  1. src/runtime/mgcwork.go

    			w.wbuf1 = wbuf
    		}
    	}
    
    	wbuf.nobj--
    	return wbuf.obj[wbuf.nobj]
    }
    
    // tryGetFast dequeues a pointer for the garbage collector to trace
    // if one is readily available. Otherwise it returns 0 and
    // the caller is expected to call tryGet().
    //
    //go:nowritebarrierrec
    func (w *gcWork) tryGetFast() uintptr {
    	wbuf := w.wbuf1
    	if wbuf == nil || wbuf.nobj == 0 {
    		return 0
    	}
    
    	wbuf.nobj--
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 12.9K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/test/inl_test.go

    			"guintptr.ptr",
    			"heapBitsSlice",
    			"markBits.isMarked",
    			"muintptr.ptr",
    			"puintptr.ptr",
    			"spanOf",
    			"spanOfUnchecked",
    			"typePointers.nextFast",
    			"(*gcWork).putFast",
    			"(*gcWork).tryGetFast",
    			"(*guintptr).set",
    			"(*markBits).advance",
    			"(*mspan).allocBitsForIndex",
    			"(*mspan).base",
    			"(*mspan).markBitsForBase",
    			"(*mspan).markBitsForIndex",
    			"(*mspan).writeUserArenaHeapBits",
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 09 04:07:57 UTC 2024
    - 10.7K bytes
    - Viewed (0)
  3. src/runtime/mgcmark.go

    		// just keep work available than to make workers wait. In the
    		// worst case, we'll do O(log(_WorkbufSize)) unnecessary
    		// balances.
    		if work.full == 0 {
    			gcw.balance()
    		}
    
    		b := gcw.tryGetFast()
    		if b == 0 {
    			b = gcw.tryGet()
    			if b == 0 {
    				// Flush the write barrier
    				// buffer; this may create
    				// more work.
    				wbBufFlush()
    				b = gcw.tryGet()
    			}
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 18 21:25:11 UTC 2024
    - 52.5K bytes
    - Viewed (0)
Back to top