Thread.SuspendCount Property

Definition

Gets the number of times this thread has been suspended by the debugger.

public:
 property int SuspendCount { int get(); };
public:
 property int SuspendCount { int get(); };
[System.Runtime.InteropServices.DispId(100)]
public int SuspendCount { [System.Runtime.InteropServices.DispId(100)] get; }
[<System.Runtime.InteropServices.DispId(100)>]
[<get: System.Runtime.InteropServices.DispId(100)>]
member this.SuspendCount : int
Public ReadOnly Property SuspendCount As Integer

Property Value

An integer that represents the number of times this thread has been suspended by the debugger.

Attributes

Examples

The following example demonstrates how to use the SuspendCount property.

public static void TestThreadProperties(DTE dte)  
{  
    // Setup debug Output window.  
    Window w = (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);  
    w.Visible = true;  
    OutputWindow ow = (OutputWindow)w.Object;  
    OutputWindowPane owp = ow.OutputWindowPanes.Add("Thread Test");  
    owp.Activate();  

    EnvDTE.Threads threads = dte.Debugger.CurrentProgram.Threads;  
    owp.OutputString("\nNumber of items in the Thread collection: " +   
                     threads.Item(1).Collection.Count + "\n");  
    foreach(EnvDTE.Thread thread in threads)  
    {  
        owp.OutputString("\nThread: " + thread.ID + "  Name: " + thread.Name);  
        owp.OutputString("\n  Edition of the environment : " + thread.DTE.Edition);  
        owp.OutputString("\n  Is alive                   : " + thread.IsAlive);  
        owp.OutputString("\n  Is frozen                  : " + thread.IsFrozen);  
        owp.OutputString("\n  Location                   : " + thread.Location);  
        owp.OutputString("\n  Parent's current mode      : " + thread.Parent.CurrentMode);  
        owp.OutputString("\n  Priority                   : " + thread.Priority);  
        owp.OutputString("\n  Program name               : " + thread.Program.Name);  
        owp.OutputString("\n  Number of stack frames     : " + thread.StackFrames.Count);  
        owp.OutputString("\n  Suspended number of times  : " + thread.SuspendCount);  
    }  
}  
Shared Sub ThreadProperties(ByRef dte As EnvDTE.DTE)  
    Dim str As String  
    Dim threads As EnvDTE.Threads = dte.Debugger.CurrentProgram.Threads  
    str = "Number of items in the Thread collection: " + _  
          threads.Item(1).Collection.Count.ToString()  
    For Each thread As EnvDTE.Thread In threads  
        str += vbCrLf + vbCrLf + "  Thread: " + thread.ID.ToString()  
        str += vbCrLf + "    Edition of the environment: " + thread.DTE.Edition  
        str += vbCrLf + "    Is alive: " + thread.IsAlive.ToString()  
        str += vbCrLf + "    Is frozen: " + thread.IsFrozen.ToString()  
        str += vbCrLf + "    Location: " + thread.Location  
        str += vbCrLf + "    Parent's current mode: " + _  
               thread.Parent.CurrentMode.ToString()  
        str += vbCrLf + "    Priority: " + thread.Priority  
        str += vbCrLf + "    Program name: " + thread.Program.Name  
        str += vbCrLf + "    Number of stack frames: " + _  
               thread.StackFrames.Count.ToString()  
        str += vbCrLf + "    Suspended number of times: " + _  
               thread.SuspendCount.ToString()  
    Next  
    MessageBox.Show(str, "Thread Test - Properties")  
End Sub  

Applies to