Thread.Thaw Method
Enables the thread to execute.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
Sub Thaw
void Thaw()
void Thaw()
abstract Thaw : unit -> unit
function Thaw()
Remarks
After a thread has been frozen, this method enables it to continue to execute.
Examples
The following example demonstrates how to use the Thaw method.
To test this method
Set the breakpoint inside the worker thread callback method.
Run the target application in the debug mode.
When the application stops on the breakpoint, run the add-in.
public static void FreezeThawTest(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 Freeze Thaw Test");
owp.Activate();
EnvDTE.Threads threads = dte.Debugger.CurrentProgram.Threads;
owp.OutputString("There are " + threads.Count + " threads:\n");
foreach(EnvDTE.Thread 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 EnvDTE.DTE)
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 EnvDTE.Thread 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
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.