Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 5 of 5 for freeManual (0.6 sec)

  1. src/runtime/stack.go

    				osStackFree(s)
    				mheap_.freeManual(s, spanAllocStack)
    			}
    			s = next
    		}
    		unlock(&stackpool[order].item.mu)
    	}
    
    	// Free large stack spans.
    	lock(&stackLarge.lock)
    	for i := range stackLarge.free {
    		for s := stackLarge.free[i].first; s != nil; {
    			next := s.next
    			stackLarge.free[i].remove(s)
    			osStackFree(s)
    			mheap_.freeManual(s, spanAllocStack)
    			s = next
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 41.1K bytes
    - Viewed (0)
  2. src/runtime/mgcwork.go

    		gp := getg().m.curg
    		for i := 0; i < batchSize && !(preemptible && gp.preempt); i++ {
    			span := work.wbufSpans.free.first
    			if span == nil {
    				break
    			}
    			work.wbufSpans.free.remove(span)
    			mheap_.freeManual(span, spanAllocWorkBuf)
    		}
    	})
    	more := !work.wbufSpans.free.isEmpty()
    	unlock(&work.wbufSpans.lock)
    	return more
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 12.9K bytes
    - Viewed (0)
  3. src/runtime/mheap.go

    		h.freeSpanLocked(s, spanAllocHeap)
    		unlock(&h.lock)
    	})
    }
    
    // freeManual frees a manually-managed span returned by allocManual.
    // typ must be the same as the spanAllocType passed to the allocManual that
    // allocated s.
    //
    // This must only be called when gcphase == _GCoff. See mSpanState for
    // an explanation.
    //
    // freeManual must be called on the system stack because it acquires
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 78K bytes
    - Viewed (0)
  4. src/runtime/mgcsweep.go

    				// The unrolled GCProg bitmap is allocated separately.
    				// Free the space for the unrolled bitmap.
    				systemstack(func() {
    					s := spanOf(uintptr(unsafe.Pointer(s.largeType)))
    					mheap_.freeManual(s, spanAllocPtrScalarBits)
    				})
    				// Make sure to zero this pointer without putting the old
    				// value in a write buffer, as the old value might be an
    				// invalid pointer. See arena.go:(*mheap).allocUserArenaChunk.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:52:18 UTC 2024
    - 32.9K bytes
    - Viewed (0)
  5. src/runtime/mbitmap.go

    	s := mheap_.allocManual(pages, spanAllocPtrScalarBits)
    	runGCProg(addb(prog, 4), (*byte)(unsafe.Pointer(s.startAddr)))
    	return s
    }
    func dematerializeGCProg(s *mspan) {
    	mheap_.freeManual(s, spanAllocPtrScalarBits)
    }
    
    func dumpGCProg(p *byte) {
    	nptr := 0
    	for {
    		x := *p
    		p = add1(p)
    		if x == 0 {
    			print("\t", nptr, " end\n")
    			break
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 00:18:55 UTC 2024
    - 60K bytes
    - Viewed (0)
Back to top