Beispiel #1
0
        /// <summary>
        /// Converts the object type of a handle to UnifiedBlockingReason enum value.
        /// </summary>
        private static UnifiedBlockingReason ConvertToUnified(string objectType)
        {
            UnifiedBlockingReason result = UnifiedBlockingReason.Unknown;

            switch (objectType)
            {
            case "Thread": result = UnifiedBlockingReason.Thread; break;

            case "Job": result = UnifiedBlockingReason.Job; break;

            case "File": result = UnifiedBlockingReason.File; break;

            case "Semaphore": result = UnifiedBlockingReason.Semaphore; break;

            case "Mutex": result = UnifiedBlockingReason.Mutex; break;

            case "Section": result = UnifiedBlockingReason.CriticalSection; break;

            case "Mutant": result = UnifiedBlockingReason.Mutex; break;

            case "ALPC Port": result = UnifiedBlockingReason.Alpc; break;

            case "Process": result = UnifiedBlockingReason.ProcessWait; break;

            case "Unknown": result = UnifiedBlockingReason.Unknown; break;

            case "None": result = UnifiedBlockingReason.None; break;

            case "Timer": result = UnifiedBlockingReason.Timer; break;

            case "Event": result = UnifiedBlockingReason.Event; break;
            }
            return(result);
        }
Beispiel #2
0
        /// <summary>
        /// Converts HandleType enum value to UnifiedBlockingReason enum value.
        /// </summary>
        private UnifiedBlockingReason ConvertToUnified(HandleInfo.HandleType type)
        {
            UnifiedBlockingReason result = UnifiedBlockingReason.Unknown;

            switch (type)
            {
            case HandleInfo.HandleType.NONE: result = UnifiedBlockingReason.None; break;

            case HandleInfo.HandleType.THREAD: result = UnifiedBlockingReason.ThreadWait; break;

            case HandleInfo.HandleType.MUTEX: result = UnifiedBlockingReason.Mutex; break;

            case HandleInfo.HandleType.PROCESS: result = UnifiedBlockingReason.ProcessWait; break;

            case HandleInfo.HandleType.EVENT: result = UnifiedBlockingReason.Event; break;

            case HandleInfo.HandleType.SECTION: result = UnifiedBlockingReason.MemorySection; break;
            }
            return(result);
        }