public static new void Initialize() { GenerationalCollector.Initialize(); // SlidingCollector.instance = new SlidingCollector(); SlidingCollector.instance = (SlidingCollector) BootstrapMemory.Allocate(typeof(SlidingCollector)); // markReferenceVisitor = new MarkReferenceVisitor(); markReferenceVisitor = (MarkReferenceVisitor) BootstrapMemory.Allocate(typeof(MarkReferenceVisitor)); // registerThreadReferenceVisitor = new RegisterThreadReference(); registerThreadReferenceVisitor = (RegisterThreadReference) BootstrapMemory.Allocate(typeof(RegisterThreadReference)); // registerPinnedReferenceVisitor = new RegisterPinnedReference(); registerPinnedReferenceVisitor = (RegisterPinnedReference) BootstrapMemory.Allocate(typeof(RegisterPinnedReference)); // updateThreadReferenceVisitor = new UpdateThreadReference(); updateThreadReferenceVisitor = (UpdateThreadReference) BootstrapMemory.Allocate(typeof(UpdateThreadReference)); // forwardReferenceVisitor = new ForwardReferenceVisitor(); forwardReferenceVisitor = (ForwardReferenceVisitor) BootstrapMemory.Allocate(typeof(ForwardReferenceVisitor)); }
public static new void Initialize() { StopTheWorldCollector.Initialize(); SegregatedFreeList.Initialize(); // instance = new MarkSweepCollector(); MarkSweepCollector.instance = (MarkSweepCollector) BootstrapMemory.Allocate(typeof(MarkSweepCollector)); // markReferenceVisitor = new MarkReferenceVisitor(); markReferenceVisitor = (MarkReferenceVisitor) BootstrapMemory.Allocate(typeof(MarkReferenceVisitor)); // markAndProcessReferenceVisitor = new MarkAndProcessReferenceVisitor(); markAndProcessReferenceVisitor = (MarkAndProcessReferenceVisitor) BootstrapMemory.Allocate(typeof(MarkAndProcessReferenceVisitor)); // updateReferenceVisitor = new UpdateReferenceVisitor(); updateReferenceVisitor = (UpdateReferenceVisitor) BootstrapMemory.Allocate(typeof(UpdateReferenceVisitor)); // threadMarkReferenceVisitor = new ThreadMarkReferenceVisitor(); threadMarkReferenceVisitor = (ThreadMarkReferenceVisitor) BootstrapMemory.Allocate(typeof(ThreadMarkReferenceVisitor)); // sweepVisitor = new SweepVisitor(); sweepVisitor = (SweepVisitor) BootstrapMemory.Allocate(typeof(SweepVisitor)); collectionTrigger = (UIntPtr)InitialTrigger; }