Switching and flagging threads
The Threads window provides so much power when debugging a multithreaded application. We touched on some of these features in the previous section. In this section, we will learn how to switch threads, flag threads, and freeze or thaw a thread. Let’s start by switching between threads in our BackgroundPingConsoleApp project.
You can switch context to a different thread by using the context menu in the Threads window. Run the project and wait for the debugger to pause at the breakpoint in our anonymous method. While the execution is paused in the debugger, right-click on the Main Thread row and select Switch to Thread. The cursor in the debugger should switch positions to the
Console.ReadLine() statement. This is where the main thread is waiting for the user to press any key in the console:
Figure 10.6 – Switching threads in the Visual Studio debugger
You can see how this function could be...