예제 #1
0
        /// <summary>
        /// Creates a new instance of the Windows memory placeholder manager.
        /// </summary>
        public PlaceholderManager()
        {
            _mappings    = new IntervalTree <ulong, ulong>();
            _protections = new IntervalTree <ulong, MemoryPermission>();

            _partialUnmapStatePtr = PartialUnmapState.GlobalState;

            _partialUnmapTrimThread              = new Thread(TrimThreadLocalMapLoop);
            _partialUnmapTrimThread.Name         = "CPU.PartialUnmapTrimThread";
            _partialUnmapTrimThread.IsBackground = true;
            _partialUnmapTrimThread.Start();
        }
예제 #2
0
 /// <summary>
 /// Creates a new instance of the Windows memory placeholder manager.
 /// </summary>
 public PlaceholderManager()
 {
     _mappings         = new IntervalTree <ulong, ulong>();
     _protections      = new IntervalTree <ulong, MemoryPermission>();
     _partialUnmapLock = new ReaderWriterLock();
 }
예제 #3
0
 /// <summary>
 /// Creates a new instance of the Windows 4KB memory placeholder manager.
 /// </summary>
 public PlaceholderManager4KB()
 {
     _mappings = new IntervalTree <ulong, byte>();
 }