internal ThreadStackNode(ThreadStackNodeManager manager, TreeNode processNode, ThreadStack threadStack)
        {
            if (processNode == null)
            {
                throw new ArgumentNullException("processNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager     = manager;
            r_processNode = processNode;

            String text = GetText(threadStack);

            r_threadStackNode                  = processNode.Nodes.Add(text);
            r_threadStackNode.ImageKey         = "cog.png";
            r_threadStackNode.SelectedImageKey = r_threadStackNode.ImageKey;
            r_threadStackNode.Tag              = this;
            r_waitedNodes = new List <ThreadStackWaitedOnNode>();
            r_ownedNodes  = new List <ThreadStackOwnedNode>();
            r_frameNodes  = new List <ThreadStackFrameNode>();

            RefreshChildren(threadStack);
        }
Esempio n. 2
0
        internal ProcessNode(ThreadStackNodeManager manager, TreeNode rootNode, Dictionary <Int64, ThreadStack> threadStacks)
        {
            if (rootNode == null)
            {
                throw new ArgumentNullException("rootNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager  = manager;
            r_rootNode = rootNode;

            String text = GetText();

            r_processNode                  = r_rootNode.Nodes.Add(text);
            r_processNode.ImageKey         = "application.png";
            r_processNode.SelectedImageKey = r_processNode.ImageKey;
            r_processNode.Tag              = this;

            r_threadStackNodes = new Dictionary <Int64, ThreadStackNode>();
            RefreshChildren(threadStacks);

            r_processNode.Expand();
        }
Esempio n. 3
0
        internal RootNode(ThreadStackNodeManager manager, TreeView root)
        {
            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            if (root == null)
            {
                throw new ArgumentNullException("root");
            }

            r_manager = manager;
            r_root    = root;

            r_root.Nodes.Clear();
            r_rootNode                  = r_root.Nodes.Add(r_manager.ApplicationName);
            r_rootNode.ImageKey         = "application_cascade.png";
            r_rootNode.SelectedImageKey = r_rootNode.ImageKey;
            r_rootNode.Tag              = this;

            r_deadLocksNode = new DeadLocksNode(r_manager, r_rootNode);
            r_processNode   = new ProcessNode(r_manager, r_rootNode, r_manager.ThreadStackManager.ThreadStackMap);

            r_rootNode.Expand();
        }
Esempio n. 4
0
        internal DeadLockItemNode(ThreadStackNodeManager manager, TreeNode deadlockNode, WaitDeadLockItem deadlockItem)
        {
            if (deadlockNode == null)
            {
                throw new ArgumentNullException("deadlockNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            if (deadlockItem == null)
            {
                throw new ArgumentNullException("deadlockItem");
            }

            r_manager      = manager;
            r_deadlockNode = deadlockNode;

            String text = GetDeadLockItemText(deadlockItem);

            r_deadlockItemNode                  = r_deadlockNode.Nodes.Add(text);
            r_deadlockItemNode.ImageKey         = "arrow_branch.png";
            r_deadlockItemNode.SelectedImageKey = r_deadlockItemNode.ImageKey;
            r_deadlockItemNode.Tag              = this;
        }
        internal DeadLocksNode(ThreadStackNodeManager manager, TreeNode rootNode)
        {
            if (rootNode == null)
            {
                throw new ArgumentNullException("rootNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager                        = manager;
            r_rootNode                       = rootNode;
            r_deadlocksNode                  = rootNode.Nodes.Add("DeadLocks");
            r_deadlocksNode.ImageKey         = "arrow_switch.png";
            r_deadlocksNode.SelectedImageKey = r_deadlocksNode.ImageKey;
            r_deadlocksNode.Tag              = this;



            r_threadDeadlocksNode  = new ThreadDeadLocksNode(r_manager, r_deadlocksNode);
            r_waitDeadlocksNode    = new WaitDeadLocksNode(r_manager, r_deadlocksNode);
            r_suspectDeadlocksNode = new SuspectDeadLocksNode(r_manager, r_deadlocksNode);
        }
Esempio n. 6
0
        internal UnownedObjectNode(ThreadStackNodeManager manager, TreeNode unownedObjectsNode, WaitObject unownedObject)
        {
            if (unownedObjectsNode == null)
            {
                throw new ArgumentNullException("unownedObjectsNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            if (unownedObject == null)
            {
                throw new ArgumentNullException("unownedObject");
            }

            r_manager            = manager;
            r_unownedObjectsNode = unownedObjectsNode;

            String text = GetUnownedObjectText(unownedObject);

            r_unownedObjectNode                  = r_unownedObjectsNode.Nodes.Add(text);
            r_unownedObjectNode.ImageKey         = "arrow_branch.png";
            r_unownedObjectNode.SelectedImageKey = r_unownedObjectNode.ImageKey;
            r_unownedObjectNode.Tag              = this;
        }
Esempio n. 7
0
        internal ThreadStackFrameNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, ThreadStackFrame threadStackframe)
        {
            if (threadStackNode == null)
            {
                throw new ArgumentNullException("threadStackNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            if (threadStackframe == null)
            {
                throw new ArgumentNullException("threadStackframe");
            }

            r_manager         = manager;
            r_threadStackNode = threadStackNode;

            String text = GetText(threadStackframe);

            r_frameNode                  = r_threadStackNode.Nodes.Insert(index, text);
            r_frameNode.ImageKey         = "text_list_bullets.png";
            r_frameNode.SelectedImageKey = r_frameNode.ImageKey;
            r_frameNode.Tag              = this;
            GetInfo(threadStackframe);
        }
        internal ThreadStackWaitedOnNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, WaitBlock waitblock)
        {
            if (threadStackNode == null)
                throw new ArgumentNullException("r_threadStackNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_threadStackNode = threadStackNode;

            r_waitedOnNode = r_threadStackNode.Nodes.Insert(index, GetText(waitblock));
            r_waitedOnNode.ImageKey = "hourglass.png";
            r_waitedOnNode.SelectedImageKey = r_waitedOnNode.ImageKey;
            r_waitedOnNode.Tag = this;
        }
        internal ThreadStackOwnedNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, WaitObject waitObject)
        {
            if (threadStackNode == null)
                throw new ArgumentNullException("r_threadStackNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_threadStackNode = threadStackNode;

            r_ownedNode = r_threadStackNode.Nodes.Insert(index, GetText(waitObject));
            r_ownedNode.ImageKey = "key.png";
            r_ownedNode.SelectedImageKey = r_ownedNode.ImageKey;
            r_ownedNode.Tag = this;
        }
Esempio n. 10
0
        internal DeadLockNode(ThreadStackNodeManager manager, TreeNode deadlocksNode, int index)
        {
            if (deadlocksNode == null)
                throw new ArgumentNullException("deadlocksNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_deadlocksNode = deadlocksNode;
            r_deadLockItemNodes = new List<DeadLockItemNode>();

            r_deadlockNode = r_deadlocksNode.Nodes.Add("DeadLock " + index);
            r_deadlockNode.ImageKey = "arrow_refresh.png";
            r_deadlockNode.SelectedImageKey = r_deadlockNode.ImageKey;
            r_deadlockNode.Tag = this;
        }
        internal SuspectDeadLocksNode(ThreadStackNodeManager manager, TreeNode rootNode)
        {
            if (rootNode == null)
                throw new ArgumentNullException("rootNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_rootNode = rootNode;
            r_deadLockNodes = new List<DeadLockNode>();

            r_deadlocksNode = rootNode.Nodes.Add("Suspect DeadLocks");
            r_deadlocksNode.ImageKey = "arrow_switch.png";
            r_deadlocksNode.SelectedImageKey = r_deadlocksNode.ImageKey;
            r_deadlocksNode.Tag = this;
            Refresh(r_manager.ThreadStackManager.SuspectWaitBlockChains);
        }
        internal UnownedObjectsNode(ThreadStackNodeManager manager, TreeNode rootNode)
        {
            if (rootNode == null)
                throw new ArgumentNullException("rootNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_rootNode = rootNode;
            r_objectNodes = new List<UnownedObjectNode>();

            r_unownedObjectsNode = rootNode.Nodes.Add("Unowned Objects");
            r_unownedObjectsNode.ImageKey = "arrow_switch.png";
            r_unownedObjectsNode.SelectedImageKey = r_unownedObjectsNode.ImageKey;
            r_unownedObjectsNode.Tag = this;

            Refresh(r_manager.ThreadStackManager.UnownedObjects);
        }
Esempio n. 13
0
        internal UnownedObjectNode(ThreadStackNodeManager manager, TreeNode unownedObjectsNode, WaitObject unownedObject)
        {
            if (unownedObjectsNode == null)
                throw new ArgumentNullException("unownedObjectsNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            if (unownedObject == null)
                throw new ArgumentNullException("unownedObject");

            r_manager = manager;
            r_unownedObjectsNode = unownedObjectsNode;

            String text = GetUnownedObjectText(unownedObject);
            r_unownedObjectNode = r_unownedObjectsNode.Nodes.Add(text);
            r_unownedObjectNode.ImageKey = "arrow_branch.png";
            r_unownedObjectNode.SelectedImageKey = r_unownedObjectNode.ImageKey;
            r_unownedObjectNode.Tag = this;
        }
        internal ThreadStackOwnedNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, WaitObject waitObject)
        {
            if (threadStackNode == null)
            {
                throw new ArgumentNullException("r_threadStackNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager         = manager;
            r_threadStackNode = threadStackNode;

            r_ownedNode                  = r_threadStackNode.Nodes.Insert(index, GetText(waitObject));
            r_ownedNode.ImageKey         = "key.png";
            r_ownedNode.SelectedImageKey = r_ownedNode.ImageKey;
            r_ownedNode.Tag              = this;
        }
Esempio n. 15
0
        internal DeadLockItemNode(ThreadStackNodeManager manager, TreeNode deadlockNode, WaitDeadLockItem deadlockItem)
        {
            if (deadlockNode == null)
                throw new ArgumentNullException("deadlockNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            if (deadlockItem == null)
                throw new ArgumentNullException("deadlockItem");

            r_manager = manager;
            r_deadlockNode = deadlockNode;

            String text = GetDeadLockItemText(deadlockItem);
            r_deadlockItemNode = r_deadlockNode.Nodes.Add(text);
            r_deadlockItemNode.ImageKey = "arrow_branch.png";
            r_deadlockItemNode.SelectedImageKey = r_deadlockItemNode.ImageKey;
            r_deadlockItemNode.Tag = this;
        }
Esempio n. 16
0
        internal ThreadStackWaitedOnNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, WaitBlock waitblock)
        {
            if (threadStackNode == null)
            {
                throw new ArgumentNullException("r_threadStackNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager         = manager;
            r_threadStackNode = threadStackNode;

            r_waitedOnNode                  = r_threadStackNode.Nodes.Insert(index, GetText(waitblock));
            r_waitedOnNode.ImageKey         = "hourglass.png";
            r_waitedOnNode.SelectedImageKey = r_waitedOnNode.ImageKey;
            r_waitedOnNode.Tag              = this;
        }
Esempio n. 17
0
        internal DeadLockNode(ThreadStackNodeManager manager, TreeNode deadlocksNode, int index)
        {
            if (deadlocksNode == null)
            {
                throw new ArgumentNullException("deadlocksNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager           = manager;
            r_deadlocksNode     = deadlocksNode;
            r_deadLockItemNodes = new List <DeadLockItemNode>();

            r_deadlockNode                  = r_deadlocksNode.Nodes.Add("DeadLock " + index);
            r_deadlockNode.ImageKey         = "arrow_refresh.png";
            r_deadlockNode.SelectedImageKey = r_deadlockNode.ImageKey;
            r_deadlockNode.Tag              = this;
        }
        internal ThreadDeadLocksNode(ThreadStackNodeManager manager, TreeNode rootNode)
        {
            if (rootNode == null)
            {
                throw new ArgumentNullException("rootNode");
            }

            if (manager == null)
            {
                throw new ArgumentNullException("manager");
            }

            r_manager       = manager;
            r_rootNode      = rootNode;
            r_deadLockNodes = new List <DeadLockNode>();

            r_deadlocksNode                  = rootNode.Nodes.Add("ThreadDeadLocks");
            r_deadlocksNode.ImageKey         = "arrow_switch.png";
            r_deadlocksNode.SelectedImageKey = r_deadlocksNode.ImageKey;
            r_deadlocksNode.Tag              = this;
            Refresh(r_manager.ThreadStackManager.ThreadDeadLocks);
        }
Esempio n. 19
0
        internal DeadLocksNode(ThreadStackNodeManager manager, TreeNode rootNode)
        {
            if (rootNode == null)
                throw new ArgumentNullException("rootNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_rootNode = rootNode;
            r_deadlocksNode     = rootNode.Nodes.Add("DeadLocks");
            r_deadlocksNode.ImageKey = "arrow_switch.png";
            r_deadlocksNode.SelectedImageKey = r_deadlocksNode.ImageKey;
            r_deadlocksNode.Tag = this;



            r_threadDeadlocksNode = new ThreadDeadLocksNode(r_manager, r_deadlocksNode);
            r_waitDeadlocksNode   = new WaitDeadLocksNode(r_manager, r_deadlocksNode);
            r_suspectDeadlocksNode = new SuspectDeadLocksNode(r_manager, r_deadlocksNode);
           
        }
Esempio n. 20
0
        internal ThreadStackNode(ThreadStackNodeManager manager, TreeNode processNode, ThreadStack threadStack)
        {
            if (processNode == null)
                throw new ArgumentNullException("processNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_processNode = processNode;

            String text = GetText(threadStack);
            r_threadStackNode = processNode.Nodes.Add(text);
            r_threadStackNode.ImageKey = "cog.png";
            r_threadStackNode.SelectedImageKey = r_threadStackNode.ImageKey;
            r_threadStackNode.Tag = this;
            r_waitedNodes = new List<ThreadStackWaitedOnNode>();
            r_ownedNodes  = new List<ThreadStackOwnedNode>();
            r_frameNodes  = new List<ThreadStackFrameNode>();

            RefreshChildren(threadStack);
        }
        internal ThreadStackFrameNode(ThreadStackNodeManager manager, TreeNode threadStackNode, int index, ThreadStackFrame threadStackframe)
        {
            if (threadStackNode == null)
                throw new ArgumentNullException("threadStackNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            if (threadStackframe == null)
                throw new ArgumentNullException("threadStackframe");

            r_manager = manager;
            r_threadStackNode = threadStackNode;

            String text = GetText(threadStackframe);

            r_frameNode = r_threadStackNode.Nodes.Insert(index, text);
            r_frameNode.ImageKey = "text_list_bullets.png";
            r_frameNode.SelectedImageKey = r_frameNode.ImageKey;
            r_frameNode.Tag = this;
            GetInfo(threadStackframe);
        }
Esempio n. 22
0
        internal ProcessNode(ThreadStackNodeManager manager, TreeNode rootNode, Dictionary<Int64, ThreadStack> threadStacks)
        {
            if (rootNode == null)
                throw new ArgumentNullException("rootNode");

            if (manager == null)
                throw new ArgumentNullException("manager");

            r_manager = manager;
            r_rootNode = rootNode;

            String text = GetText();
            r_processNode = r_rootNode.Nodes.Add(text);
            r_processNode.ImageKey = "application.png";
            r_processNode.SelectedImageKey = r_processNode.ImageKey;
            r_processNode.Tag = this;

            r_threadStackNodes = new Dictionary<Int64, ThreadStackNode>();
            RefreshChildren(threadStacks);

            r_processNode.Expand();
        }
Esempio n. 23
0
        internal RootNode(ThreadStackNodeManager manager, TreeView root)
        {
            if (manager == null)
                throw new ArgumentNullException("manager");

            if (root == null)
                throw new ArgumentNullException("root");

            r_manager = manager;
            r_root = root;

            r_root.Nodes.Clear();
            r_rootNode = r_root.Nodes.Add(r_manager.ApplicationName);
            r_rootNode.ImageKey = "application_cascade.png";
            r_rootNode.SelectedImageKey = r_rootNode.ImageKey;
            r_rootNode.Tag = this;

            r_deadLocksNode = new DeadLocksNode(r_manager, r_rootNode);
            r_processNode = new ProcessNode(r_manager, r_rootNode, r_manager.ThreadStackManager.ThreadStackMap);

            r_rootNode.Expand();
        }
        public UnmanagedThreadStacksControl()
        {
            InitializeComponent();

            r_nodeview = new ThreadStackNodeManager(tvwHierarchy, "Application X");
        }