Thread2.IsFrozen, propriété

Obtient une valeur indiquant si le débogueur a suspendu l'exécution d'un thread.

Espace de noms :  EnvDTE90
Assembly :  EnvDTE90 (dans EnvDTE90.dll)

Syntaxe

'Déclaration
ReadOnly Property IsFrozen As Boolean
    Get
bool IsFrozen { get; }
property bool IsFrozen {
    bool get ();
}
abstract IsFrozen : bool
function get IsFrozen () : boolean

Valeur de propriété

Type : System.Boolean
Le complément retourne une valeur booléenne true si le thread est figé par le débogueur, false dans le cas contraire.

Implémentations

Thread.IsFrozen

Exemples

L'exemple suivant montre comment utiliser la propriété Collection.

Pour tester cette propriété :

  1. Définissez le point d'arrêt dans la méthode de rappel du thread de travail.

  2. Exécutez l'application cible en mode débogage.

  3. Lorsque l'application s'arrête sur le point d'arrêt, exécutez le complément.

public static void TestThreadProperties(DTE2 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(EnvDTE90.Thread2 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);
        owp.OutputString("\n  Flag on the thread  : " + thread.Flag);
    }
}
Shared Sub ThreadProperties(ByRef dte As EnvDTE80.DTE2)
    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 EnvDTE90.Thread2 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()
        str += vbCrLf + "    Flag on the thread: " + _
               thread.Flag.ToString()
    Next
    MessageBox.Show(str, "Thread Test - Properties")
End Sub

Sécurité .NET Framework

Voir aussi

Référence

Thread2 Interface

IsFrozen, surcharge

EnvDTE90, espace de noms

Freeze

Thaw

Autres ressources

Utilisation des threads et des processus

Graphique Modèle d'objet Automation

Comment : utiliser la fenêtre Threads