Sun WorkShop 入門

高速実行モード

高速実行モードはデバッグ機能の 1 つです。このモードでは、プログラムを通常の状態で実行しながら、いつでも処理を引き継ぐことができるように、バックグラウンドでデバッガが待機しています。プログラムが異常終了しても、コアダンプが出力される前にデバッガがプログラムを保存します。

できるだけ速くプログラムを実行したいが、まだデバッグする必要があるという場合は、デバッガの開始時に高速実行モードを選択してください。「デバッガ」ウィンドウが表示されますが、プログラムはシェルから実行されているときとまったく同様に実行されます。このとき、プログラムのシンボルは読み込まれません。

プログラムを終了するような条件が検出されると、デバッガはデバッグモードに切り替わり、プログラムのシンボルが読み込まれます。このとき、多少の遅延が発生しますが、プログラムを実行しながらデバッグ機能を利用することができます。

高速実行モードでプログラムを実行している場合は、ブレークポイントに達したときや「割り込み」ボタンをクリックして手動で実行に割り込みをかけたときなど、実行に割り込みがあったときにいつでもデバッグモードに切り替えることができます。

高速実行モードの利点

高速実行モードには、次のような利点があります。

高速実行モードの使用

高速実行モードは、次のような場合に使用します。

デバッグモードと高速実行モードを切り替えながらプログラムをデバッグすることによって、それぞれの機能の長所を活用できます。

高速実行モードへの切り替え方

実行またはデバッグするプログラムを選択するたびに、高速実行モードとデバッグモードのどちらでプログラムを実行するかを選択できます。

Sun WorkShop のメインウィンドウまたは「デバッグ」ウィンドウの「デバッグ」メニューを使って、現在のプログラムの、高速実行モードとデバッグモードを切り替えることができます。

プログラムが高速実行モードで起動するようにデフォルトを変更するには、Sun WorkShop のメインウィンドウで「オプション」⇒「デバッグ用オプション」を選択した後、「デバッグオプション」ウィンドウの「カテゴリ」リストから「デバッグ性能」を選択し、「デフォルトとして保存」をクリックします。

高速実行モードの使用例

プログラムに変更を加え、その変更が正しく動作するものと仮定します。プログラムを再構築した後、最小のオーバーヘッドでプログラムが実行されるように、「デバッグ」メニューから「高速実行モード」を選択します。Sun WorkShop の起動後、はじめてプログラムを実行またはデバッグする場合は、「デバッグ」ウィンドウが開くのに、わずかな遅延が生じます。

プログラムを開始するには、「開始」ボタンをクリックするか、「デバッグ」ウィンドウで「実行」⇒「開始」を選択します。プログラムはセグメント例外が見つかるまで、正常に実行されます。

プログラムが終了して、コアダンプを出力する前に、Sun WorkShop はデバッグモードに切り替わり、プログラムのシンボルを読み込みます。これで、Sun WorkShop のデバッグ機能をすべて利用でき、デバッグモードでデバッグを開始したときと同じようにプログラムをデバッグできるようになります。ここで、変更、修正、継続実行の過程を経て、最終的にプログラムを再構築します。

プログラムを実行する前に、再び高速実行モードを選択します。

今回は一時停止はないものの、プログラムが無限ループに入ったようです。「割り込み」ボタンを押すと、プログラムが停止して、デバッグ用のシンボルが読み込まれます。データの値の確認、ブレークポイントの設定など、必要なデバッグ操作を行ってバグを追跡します。

さらにプログラムを再構築し、高速実行モードを使用可能にして、プログラムを再び実行します。これで、プログラムは問題なく実行されるようになります。