IDE におけるスレッドのデバッグ

関連項目

現在のセッションで作成したスレッドは、すべて「デバッグ」ウィンドウに表示されます。「デバッグ」ウィンドウを開くには、「ウィンドウ」>「デバッグ」>「デバッグ」(Alt-Shift-9) を選択します。

現在のスレッドの変更

常に 1 つのスレッドのみが、現在のスレッドになります。デフォルトでは、現在のセッション内でデバッガが制御を取得したスレッドが現在のスレッドです。デバッグするスレッドを切り替えると、「局所変数」ウィンドウが自動的に更新され、そのスレッドに適切なデータが反映されます。

現在のスレッドを変更する

スレッドの中断と再開

スレッドに問題があると思われる場合は、そのスレッドの実行を中断し、問題を解決してから実行を再開することができます。「デバッグ」ウィンドウを使用すると、デバッグセッション内のスレッドを表示し、実行中または中断中のスレッドを簡単に確認できます。スレッド名の左側のアイコンで、そのスレッドが中断中または再開待ちのどちらであるかがわかります。

アプリケーションスレッドは、「デバッグ」ウィンドウでスレッドを右クリックしてポップアップメニューからアクションを選択することで、中断、割り込み、および再開できます。または、「デバッグ」ウィンドウの右側の「再開」() および「中断」() ボタンをクリックすることもできます。「再開」ボタンおよび「中断」ボタンは、「デバッグ」ウィンドウツールバーの「中断/再開の表を表示」ボタン (中断/再開の表を表示) をクリックして非表示にすることができます。

「エディタ」ウィンドウのアイコン

ソースエディタの左マージンにあるスレッドアイコンは、その行に中断されているスレッドがあることを示します。次の表に、デバッグセッション中のソースエディタに表示されるスレッドの状態を表すアイコンを示します。

アイコン 説明
実行中のスレッド その他の中断しているスレッド
ブレークポイントによって中断しているスレッド ブレークポイントにヒットしたために中断しているその他のスレッド

中断しているスレッドを現在のスレッドに設定する

マルチスレッドアプリケーション

マルチスレッドのアプリケーションをデバッグするとき、特定のスレッドのステップが、ほかのスレッドで発生したブレークポイントによって中断されることがあります。この状態が発生した場合、IDE でスレッドを切り替えるオプションが表示されます。IDE では、コンテキストの新しいスレッドへの自動切換えは行われません。

別のスレッド内のブレークポイントにヒットした場合、「デバッグ」ウィンドウにパネルが表示され、通知されます。現在のスレッドは、明示的に切り替えるかスレッドが停止するまで、現在のスレッドのままになります。「デバッグ」ウィンドウのパネルの矢印をクリックすると、そのスレッドに切り替えるスレッドをいつでも選択できます。これにより、現在のスレッドのデバッグを続け、都合のよいときにブレークポイントにヒットしたスレッドに切り替えることができます。

スレッドのソースコードの表示

スレッドが問題の原因であると思われ、さらに調べる必要がある場合は、IDE のソースエディタでスレッドのソースコードを表示できます。

スレッドのソースコードを表示する

関連項目
「デバッグ」ウィンドウの使用
ウォッチポイントの作成
呼び出しスタックの使用法
プログラムのステップ実行

著作権と商標について