Udostępnij za pośrednictwem


Thread2.Thaw Method

Definition

Allows the thread to resume execution.

public:
 void Thaw();
public:
 void Thaw();
void Thaw();
[System.Runtime.InteropServices.DispId(2)]
public void Thaw ();
[<System.Runtime.InteropServices.DispId(2)>]
abstract member Thaw : unit -> unit
Public Sub Thaw ()

Implements

Attributes

Examples

The following example demonstrates how to use the Freeze method.

public static void FreezeThawTest(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 Freeze Thaw   
      Test");  
    owp.Activate();  

    EnvDTE.Threads threads = dte.Debugger.CurrentProgram.Threads;  
    owp.OutputString("There are " + threads.Count + " threads:\n");  
    foreach(EnvDTE90.Thread2 thread in threads)  
    {  
        owp.OutputString("\nThread: " + thread.ID + "  Name: " +   
          thread.Name);  
        owp.OutputString("\n  Is frozen                  : " +   
          thread.IsFrozen);  
        owp.OutputString("\n  Freezing . . . ");  
        thread.Freeze();  
        owp.OutputString("\n  Is frozen                  : " +   
          thread.IsFrozen);  
        owp.OutputString("\n  Thawing . . . ");  
        thread.Thaw();  
        owp.OutputString("\n  Is frozen                  : " +   
          thread.IsFrozen);  
    }  
}  
Shared Sub FreezeThawTest(ByRef dte As EnvDTE80.DTE2)  
    Dim str As String  
    Dim threads As EnvDTE.Threads = dte.Debugger.CurrentProgram.Threads  
    str = "There are " + threads.Count.ToString() + " threads running."  
    For Each thread As EnvDTE90.Thread2 In threads  
        str += vbCrLf + vbCrLf + "  Thread: " + thread.ID.ToString()  
        str += vbCrLf + vbCrLf + "  Is frozen: " + _  
          thread.IsFrozen.ToString()  
        str += vbCrLf + vbCrLf + "  Freezing ... "  
        thread.Freeze()  
        str += vbCrLf + vbCrLf + "  Is frozen: " + _   
          thread.IsFrozen.ToString()  
        str += vbCrLf + vbCrLf + "  Thawing ... "  
        thread.Thaw()  
        str += vbCrLf + vbCrLf + "  Is frozen: " + _  
          thread.IsFrozen.ToString()  
    Next  
    MessageBox.Show(str, "Thread Freeze Thaw Test")  
End Sub  

Remarks

After a thread has been frozen, this method allows the thread to continue to execute.

Applies to