Exemplo n.º 1
0
        protected override UnifiedBlockingObject GetUnifiedBlockingObjectForHandle(UnifiedHandle handle)
        {
            var handleInfo = _handles.SingleOrDefault(h => h.Handle == handle.Value);

            if (handleInfo == null)
            {
                return(base.GetUnifiedBlockingObjectForHandle(handle));
            }

            return(new UnifiedBlockingObject(handleInfo));
        }
Exemplo n.º 2
0
        protected void AddSingleWaitInformation(UnifiedStackFrame frame, ulong handleValue)
        {
            // TODO The process id can't be zero, or this will always fail!
            //      Currently we are running the stack walker only for dump files, which means
            //      we don't have an id to run DuplicateHandle against.
            var typeName   = GetHandleType((IntPtr)handleValue, 0);
            var objectName = GetHandleObjectName((IntPtr)handleValue, 0);

            UnifiedHandle unifiedHandle = new UnifiedHandle(handleValue, typeName, objectName);

            frame.Handles.Add(unifiedHandle);
        }
Exemplo n.º 3
0
        protected void AddSingleWaitInformation(UnifiedStackFrame frame, ulong handleValue)
        {
            // TODO The process id can't be zero, or this will always fail!
            //      Currently we are running the stack walker only for dump files, which means
            //      we don't have an id to run DuplicateHandle against.
            var typeName = GetHandleType((IntPtr)handleValue, 0);
            var objectName = GetHandleObjectName((IntPtr)handleValue, 0);

            UnifiedHandle unifiedHandle = new UnifiedHandle(handleValue, typeName, objectName);
            frame.Handles.Add(unifiedHandle);
        }
Exemplo n.º 4
0
        protected override UnifiedBlockingObject GetUnifiedBlockingObjectForHandle(UnifiedHandle handle)
        {
            var handleInfo = _handles.SingleOrDefault(h => h.Handle == handle.Value);
            if (handleInfo == null)
                return base.GetUnifiedBlockingObjectForHandle(handle);

            return new UnifiedBlockingObject(handleInfo);
        }
Exemplo n.º 5
0
 protected virtual UnifiedBlockingObject GetUnifiedBlockingObjectForHandle(UnifiedHandle handle)
 {
     return new UnifiedBlockingObject(handle.Value, handle.ObjectName, handle.Type);
 }
Exemplo n.º 6
0
 protected virtual UnifiedBlockingObject GetUnifiedBlockingObjectForHandle(UnifiedHandle handle)
 {
     return(new UnifiedBlockingObject(handle.Value, handle.ObjectName, handle.Type));
 }