Example #1
0
        /// <summary>
        /// Finalises all ThreadManager objects
        ///
        /// Called once at finish
        /// </summary>
        public static void Finalise()
        {
            if (_cpuUsage == null)
            {
                throw new InvalidOperationException("ThreadManager must be initialised");
            }

            CancelAll();

            if (_threadManager != null)
            {
                _threadManager.CancelThread();
                _threadManager = null;
            }

            if (_threadAbortManager != null)
            {
                _threadAbortManager.CancelThread();
                _threadAbortManager = null;
            }

            if (_threadCacheManager != null)
            {
                _threadCacheManager.CancelThread();
                _threadCacheManager = null;
            }

            _cpuUsage = null;
        }