JetBrains Rider 2020.2 ヘルプ

デバッグウィンドウ

デバッガーセッション開始すると、デバッグツールウィンドウが表示されます。このウィンドウを使用して、デバッガーセッションを制御し、プログラムデータ(フレーム、スレッド、変数など)を表示して分析し、さまざまなデバッガーアクションを実行します。

これは、デバッグツールウィンドウの概要です。ツールウィンドウの使用に関する一般的な手順については、ツールウィンドウを参照してください。

JetBrains Rider: Debug window

セッション

複数のデバッグセッションを同時に実行すると、それらはデバッグツールウィンドウの上部にあるタブに分割されます。

Session tabs in the Debug window

特定の実行 / デバッグ構成に対してサービスウィンドウ有効にすると、これらの構成のいずれかをデバッグするときに、デバッグウィンドウのビュー全体がサービスウィンドウ内に表示されます。

Debug window inside Services window

インライン変数値や実行ポイントなどのすべての情報が、選択したセッションタブに表示されます。これは、同じコードを使用する複数のデバッグセッションを並行して実行する場合に重要です。

タブ

デバッグツールウィンドウには、セッションごとに次のタブが表示されます。

  • コンソール:プログラム出力を表示します。

    ローカルセッションの場合、このタブは、デバッガーを接続せずにプログラムを実行した場合と同じように機能します。

    プロセスにアタッチすると、プログラム出力はリダイレクトされず、デバッガー出力のみがデバッガーコンソールに表示されます。

  • デバッグ出力:たとえば Debug.WriteLine() メソッドを使用して、アプリケーションからデバッグ出力に送信されたメッセージを表示します。

  • 並列スタック : ダイアグラム上のスレッドとそのスタックフレームを表示します。

  • デバッガー:中断されたプログラムの現在の実行ポイントにあるオブジェクトの状態を探索できます。
    タブは次のペインに分かれています。

    • 左側のスレッドフレームを使用すると、スレッドとそのフレームの 1 つを調べたいものを選択できます。

    • 変数 : 選択したフレームのスコープ内のローカル変数を表示します。既定では、ウォッチは変数と統合されていますが、変数タブにウォッチを表示する icons.debugger.watch.svg をクリックすると、別のペインにウォッチを表示できます。

  • メモリ : ヒープ上で現在使用可能なオブジェクトに関する情報を提供し、それらのライフタイムを監視および分析できます。

タブを表示 / 隠す

  • Layout options button をクリックして、表示するタブを選択します。

タブを移動する

好みに合わせてタブを配置できます。タブを別の場所に移動したり、タブを別のタブとグループ化して、画面上の同じスペースを共有できます。

  • タブヘッダーを目的の場所にドラッグします。青いフレームは宛先を示します。

デフォルトレイアウトを復元します

デバッグツールウィンドウのレイアウトを変更し、新しい配置が気に入らない場合は、デフォルトの状態に戻すことができます。

  • デバッグツールウィンドウの右上隅にあるLayout options buttonをクリックしてから、デフォルトレイアウトの復元をクリックします。

デバッグツールバー

選択したタブに関係なく、ウィンドウの左側にある次のツールバーコントロールをいつでも使用できます。

項目 ツールチップとショートカット 説明
Restart 再実行
Ctrl+F5
現在のアプリケーションを停止してもう一度実行するには、このボタンをクリックします。
Resume プログラムを再開
F9
アプリケーションが一時停止している場合は、このボタンをクリックしてプログラムの実行を再開します。
Pause 一時停止プログラム
Ctrl+Pause

プログラムの実行を一時停止するには、このボタンをクリックします。

Stop 停止
Ctrl+F2
このボタンをクリックして、現在のプロセスを終了します。
View breakpoints ブレークポイントを表示
Ctrl+Shift+F8
このボタンをクリックすると、ブレークポイントの動作を設定できるブレークポイントダイアログが開きます。
Mute breakpoints ブレークポイントをミュート

ブレークポイントの状態を切り替えるには、このボタンを使用します。

ブレークポイントで停止せずにプログラムを実行するには、プロジェクト内のすべてのブレークポイントを一時的にミュートすることができます。

Show options menu 設定

このボタンをクリックして、次のオプションのメニューを開きます。

  • 値をインラインで表示する : このオプションを選択すると、インラインデバッグ機能が有効になり、エディターでの使用の直後に変数の値を表示できます。

  • アルファベット順に値をソートする : アルファベット順に変数ペインの値をソートするには、このオプションを選択します。

  • セッション完了時にブレークポイントのミュートを解除 : デバッグセッションが終了した後、すべての無効なブレークポイントを再度有効にするには、このオプションを選択します。

icons.general.pin_tab.svg タブをピン留め 現在のタブを固定または固定解除するには、このボタンをクリックします。このウィンドウで最大数のタブに達したときにタブが自動的に閉じないようにするには、タブを固定する必要があります。

ステップツールバー

項目 ツールチップとショートカット 説明
Show Execution Point 実行ポイントを表示
Alt+F10
このボタンをクリックすると、エディターで現在の実行ポイントがハイライトされ、対応するスタックフレームがフレームペインに表示されます。
Skip to Cursor カーソルにスキップ
Ctrl+Alt+Shift+F9

ターゲットステートメントまでプログラムを実行する代わりに、実際に実行せずにコードの一部をスキップすることもできます(たとえば、既知のバグを回避したり、ルーチンを繰り返さないようにするため)。これは、実行メニューおよびデバッグウィンドウでも使用可能なカーソルにスキップ Skip to Cursor コマンド Ctrl+Alt+Shift+F9 を使用して実行できます。

実行ポインタExecution pointerをマウスでドラッグしてターゲット行にドロップすることにより、プログラムの一部をスキップすることもできます。

JetBrains Rider: Dragging the execution pointer

JetBrains Rider 設定 Ctrl+Alt+Sビルド、実行、デプロイ | デバッガーページでフローティングデバッガーアクションを表示するが有効になっている場合、ターゲットステートメントの上にマウスを移動して、対応するアクションを選択できます。

JetBrains Rider debugger: Setting the next statement with the hover action

別のステートメントにジャンプするときは、次のことに注意してください。

  • 古い実行ポイントと新しい実行ポイント間のステートメントは実行されません。

  • 戻ることができます。つまり、すでに実行されたステートメントに戻ります。この場合、すでに実行されたステートメントは取り消されません。

  • 別の関数で次の文を設定することは不可能です。

Step over ステップオーバー
F8
このボタンをクリックすると、現在のメソッドまたはファイルの次の行までプログラムが実行され、現在の実行ポイント(存在する場合)で参照されているメソッドはスキップされます。現在の行がメソッド内の最後の行である場合、このメソッドの直後に実行された行へのステップが実行されます。
Force step over 強制的にステップオーバー
Alt+Shift+F8
このメソッドがブレークポイントを内部に持っていても、このボタンをクリックするとデバッガーがメソッドにステップインします。
Step into ステップイン
F7

デバッガーを現在の実行ポイントで呼び出されたメソッドにステップインさせるには、このボタンをクリックします。

デバッガーは、現在の行から呼び出される最初の関数の最初のステートメントに実行ポインターを設定します。関数が呼び出されない場合、デバッガーは次のステートメントに進みます。

デフォルトでは、JetBrains Rider は外部ソースのデバッグを有効にします。つまり、ライブラリコードにステップインすると、自動的に逆コンパイルされ、デバッガーがそこに実行ポイントを移動します。
デバッガーでライブラリコードを無視する場合は、外部ソースのデバッグを無効にすることができます。JetBrains Rider 設定 Ctrl+Alt+Sビルド、実行、デプロイ | デバッガーページで外部ソースデバッグを有効にするをクリアします。

Smart step into スマートステップイン
Shift+F7

現在の行に複数のネストされた呼び出しが含まれている場合、JetBrains Rider ではステップインする呼び出しを選択できます。次のコード行を考えてみましょう。

Console.WriteLine(Foo(Bar("input") + Baz("input")));
この行にはいくつかの呼び出しが含まれています。ステップインを使用すると、デバッガーはまず Bar() の実装に入り、次に Baz() の実装に入ります。

たとえば Bar() にステップインする呼び出しを選択する場合は、スマートステップイン Smart Step Into Shift+F7 を使用できます。

JetBrains Rider: Smart step into - stepping into selected call

ステップインする関数を選択すると、デバッガーは選択した関数の最初のステートメントに実行ポインターを設定します。
セレクターには、どの呼び出しが既に実行されたかが表示され、これらの呼び出しを再度実行できます。

複数のメソッド呼び出しを含む行でステップイン F7 を呼び出すときに、「スマートステップイン」動作を有効にできます。これを行うには、設定 / 環境設定 Ctrl+Alt+Sビルド、実行、デプロイ | デバッガー | ステップページで常にスマートステップインするを選択します。

Step out 踏みでる
Shift+F8
このボタンをクリックすると、デバッガーが現在のメソッドから抜け出し、直後に実行される行に移動します。
Run to cursor カーソルまで実行
Alt+F9

このボタンをクリックすると、プログラム実行を再開し、実行ポイントがエディターの現在のカーソル位置の行に達するまで一時停止します。ブレークポイントは必要ありません。実際には、プログラムの実行が一時停止されると削除されるキャレットの現在の行に一時的なブレークポイントが設定されています。すでに実行されている行にキャレットが配置されている場合は、前のブレークポイントにロールバックする方法がないため、プログラムはその後の実行のために再開されます。このアクションは、メソッドのシーケンスを詳しく調べて、一度にいくつかのメソッドを終了する必要がある場合に特に便利です。

指定された行に移動する前に実行する必要がある行にブレークポイントが設定されている場合、デバッガーは最初に検出されたブレークポイントで一時停止します。

JetBrains Rider 設定 Ctrl+Alt+Sビルド、実行、デプロイ | デバッガーページでフローティングデバッガーアクションを表示するが有効になっている場合、ターゲットステートメントの上にマウスを移動して、対応するアクションを選択できます。

JetBrains Rider debugger: Run to cursor with the hover action

エディターに行番号が表示され、JetBrains Rider 設定 Ctrl+Alt+Sビルド、実行、デプロイ | デバッガーページで行番号をクリックしてカーソルまで実行するが有効になっている場合、行番号をクリックしてこの行に移動できます。

JetBrains Rider debugger: Run to cursor using the line number
Force run to cursor ノンストップでカーソルまで実行
Ctrl+Alt+F9
現在の実行ポイントとターゲットステートメントの間にブレークポイントがある場合、ノンストップカーソルまで実行 Run to Cursor Non-Stop コマンド Ctrl+Alt+F9 を使用して、デバッガーにこれらのブレークポイントをスキップさせることができます。
Evaluate expression 式を評価する
Alt+F8
このボタンをクリックして、式を評価します
最終更新日 :

関連ページ:

デバッグを開始

複数のデバッグセッションを同時に実行できます。アプリケーションをデバッグするには、デバッガーをアプリケーションプロセスにアタッチする必要があります。デバッグセッションを開始するにはいくつかの選択肢があります。アタッチされたデバッガーでアプリケーションを起動します(デバッグモード)。アプリケーションが...

ツールウィンドウ

ツールウィンドウは、ソリューション構造の表示、アプリケーションの実行とデバッグ、バージョン管理システムや他の外部ツールとの統合、コード分析、検索、ナビゲーションなどの便利な開発タスクへのアクセスを提供します。デフォルトでは、ツールウィンドウはメインウィンドウの下部と側面にアタッチされています。ただし...

実行 / デバッグ構成の作成および編集

ナビゲーションバーが表示されると(表示 | 外観 | ナビゲーションバー)、使用可能な実行 / デバッグ構成が実行エリアの実行 / デバッグ構成セレクタに表示されます。JetBrains Rider は、実行 / デバッグ構成を処理するためのツールとして実行 / デバッグ構成ダイアログを提供...

中断したプログラムを調べる

フレームを分析することにより、中断されたアプリケーションの状態を調べることができます。プログラムがデバッグモードで実行されている場合、プログラムを中断する方法は 2 つあります。検査するコード内のブレークポイントを設定するで、いずれかがヒットするまで待機します。または実行 | プログラムの中断で...

マルチスレッドアプリケーションのデバッグ

マルチスレッドアプリケーションは、一度に複数のスレッドを追跡する必要があるため、デバッグは常に困難です。さらに、マルチスレッドアプリケーションでは、不均一なワークロード分散、ロック競合、シリアライズされた実行などの新しいタイプのバグやパフォーマンスの課題が発生します。デバッグセッションのステップ実行...

インスペクション変数

プログラムが中断されると、現在選択されているフレームのコンテキストで変数と引数を調べることができます。それらの値を表示して、その場で編集できます。コンテキストを変更するには、フレームペインで別のフレームを選択してください。変数の値や式の結果ではなく、特定のオブジェクトを追跡することもできます。変数値...