在当前会话中创建的所有线程都显示在“调试”窗口中。可通过选择“窗口”>“调试”>“调试”(Alt-Shift-9) 来打开“调试”窗口。
在任何给定时间,都只有一个线程是当前线程。缺省情况下,当前线程是当前会话内调试器从中获得控制的线程。在线程间切换以便进行调试时,将自动更新“局部变量”窗口以反映适用于该线程的数据。
更改当前线程:
如果您认为某一线程引发了问题,则可以暂停该线程的执行,在问题得到解决后再恢复此线程。在“调试”窗口中,您可以方便地查看调试会话中的线程,并识别正在运行的线程和已暂停的线程。线程名称左侧的图标指示该线程是被暂停还是等待恢复。
通过在“调试”窗口中右键单击线程并从弹出式菜单中选择相应的操作,可以暂停、中断和恢复应用程序线程。或者,也可以单击“调试”窗口右侧的“恢复”() 和“暂停”(
) 按钮。通过单击“调试”窗口工具栏中的“显示暂停/恢复表”按钮 (
),可以隐藏“暂停”和“恢复”按钮。
如果源代码编辑器的左旁注中显示一个线程图标,则指示该行中有一个暂停线程。下表说明了一些表示线程状态的图标,这些图标将在调试会话期间出现在源代码编辑器中。
图标 | 描述 |
---|---|
![]() |
其他已暂停的线程 |
![]() |
遇到断点而暂停的其他线程 |
将暂停线程切换为当前线程:
在调试多线程的应用程序时,在某个其他线程中遇到断点时可能会中断特定线程中的步骤。如果出现这种情况,IDE 将允许您选择对线程进行切换。IDE 不会自动将上下文切换到新线程。
在遇到另一个线程中的断点时,“调试”窗口中将显示一个通知面板。在明确切换当前线程或该线程停止之前,当前线程保持不变。可随时单击“调试”窗口面板中的箭头并选择某个线程,以便切换到该线程。这样,您就可以继续调试当前线程,并在方便时切换至遇到断点的线程。
如果您认为某个线程引发了问题并要对它进行进一步的检查,则可以在 IDE 的源代码编辑器中查看该线程的源代码。
查看线程的源代码:
如果线程的源代码可用,则源代码编辑器将跳到该线程调用栈上的当前调用。