示例#1
0
        public override ClrThreadPool GetThreadPool()
        {
            if (_threadpool != null)
            {
                return(_threadpool);
            }

            IThreadPoolData data = GetThreadPoolData();

            if (data == null)
            {
                return(null);
            }

            _threadpool = new DesktopThreadPool(this, data);
            return(_threadpool);
        }
示例#2
0
        /// <summary>
        /// Flushes the dac cache.  This function MUST be called any time you expect to call the same function
        /// but expect different results.  For example, after walking the heap, you need to call Flush before
        /// attempting to walk the heap again.
        /// </summary>
        public override void Flush()
        {
            OnRuntimeFlushed();

            Revision++;
            _dacInterface.Flush();

            _modules.Clear();
            _moduleFiles = null;
            _moduleSizes = null;
            _domains     = null;
            _system      = null;
            _shared      = null;
            _threads     = null;
            MemoryReader = null;
            _heap        = null;
            _threadpool  = null;
        }
示例#3
0
        /// <summary>
        /// Flushes the dac cache.  This function MUST be called any time you expect to call the same function
        /// but expect different results.  For example, after walking the heap, you need to call Flush before
        /// attempting to walk the heap again.
        /// </summary>
        public override void Flush()
        {
            OnRuntimeFlushed();

            Revision++;
            _dacInterface.Flush();

            _modules.Clear();
            _moduleFiles = null;
            _moduleSizes = null;
            _domains = null;
            _system = null;
            _shared = null;
            _threads = null;
            MemoryReader = null;
            _heap = null;
            _threadpool = null;
        }
示例#4
0
        public override ClrThreadPool GetThreadPool()
        {
            if (_threadpool != null)
                return _threadpool;

            IThreadPoolData data = GetThreadPoolData();
            if (data == null)
                return null;

            _threadpool = new DesktopThreadPool(this, data);
            return _threadpool;
        }