Esempio n. 1
0
 public mcentral(mutex @lock = default, spanClass spanclass = default, mSpanList nonempty = default, mSpanList empty = default, array <spanSet> partial = default, array <spanSet> full = default, ulong nmalloc = default)
 {
     this.@lock     = @lock;
     this.spanclass = spanclass;
     this.nonempty  = nonempty;
     this.empty     = empty;
     this.partial   = partial;
     this.full      = full;
     this.nmalloc   = nmalloc;
 }
Esempio n. 2
0
 // Initialize a single central free list.
 private static void init(this ptr <mcentral> _addr_c, spanClass spc)
 {
     ref mcentral c = ref _addr_c.val;
Esempio n. 3
0
 public mspan(ref ptr <mspan> next = default, ref ptr <mspan> prev = default, ref ptr <mSpanList> list = default, System.UIntPtr startAddr = default, System.UIntPtr npages = default, gclinkptr manualFreeList = default, System.UIntPtr freeindex = default, System.UIntPtr nelems = default, ulong allocCache = default, ref ptr <gcBits> allocBits = default, ref ptr <gcBits> gcmarkBits = default, uint sweepgen = default, ushort divMul = default, ushort baseMask = default, ushort allocCount = default, spanClass spanclass = default, mSpanStateBox state = default, byte needzero = default, byte divShift = default, byte divShift2 = default, System.UIntPtr elemsize = default, System.UIntPtr limit = default, mutex speciallock = default, ref ptr <special> specials = default)
 {
     this.next           = next;
     this.prev           = prev;
     this.list           = list;
     this.startAddr      = startAddr;
     this.npages         = npages;
     this.manualFreeList = manualFreeList;
     this.freeindex      = freeindex;
     this.nelems         = nelems;
     this.allocCache     = allocCache;
     this.allocBits      = allocBits;
     this.gcmarkBits     = gcmarkBits;
     this.sweepgen       = sweepgen;
     this.divMul         = divMul;
     this.baseMask       = baseMask;
     this.allocCount     = allocCount;
     this.spanclass      = spanclass;
     this.state          = state;
     this.needzero       = needzero;
     this.divShift       = divShift;
     this.divShift2      = divShift2;
     this.elemsize       = elemsize;
     this.limit          = limit;
     this.speciallock    = speciallock;
     this.specials       = specials;
 }