RTC はコレクタを除く、ブレークポイントの設定や変数の検査などのデバッグ機能とともに使用することができます。
次に、RTC の機能を簡単に説明します。
メモリーアクセスエラーを検出する
メモリーリークを検出する
メモリー使用に関するデータを収集する
すべての言語で動作する
システムライブラリなど、ソースを持たないコードで動作する
マルチスレッドコードで動作する
再コンパイル、再リンク、またはメークファイルの変更が不要である
-g フラグを付けてコンパイルすると、RTC エラーメッセージでのソース行番号の関連性が与えられます。RTC は、最適化 -O フラグによってコンパイルされたプログラムを検査することもできます。-g オプションによってコンパイルされていないプログラムについては、特殊な考慮事項があります。
RTC の詳細については、オンラインヘルプを参照してください。
大量のエラーが一度に検出されないようにするには、RTC を開発サイクルの初期の段階で使用します。この段階では、プログラムの構成要素となる個々のモジュールを開発します。この各モジュールを実行する単位テストを作成し、RTC を各モジュールごとに 1 回ずつ使用して検査を行います。これにより、一度に処理するエラーの数が減ります。すべてのモジュールを統合して完全なプログラムにした場合、新しいエラーはほとんど検出されません。エラー数をゼロにした後でモジュールに変更を加えた場合にのみ、RTC を再度実行してください。
RTC を使用するには、次の要件を満たす必要があります。
Sun のコンパイラを使用してコンパイルされたプログラム
libc を動的にリンクしている。
標準の libc malloc/free/realloc 関数にもとづいたアロケータを使用。
RTC は、ほかのアロケータを扱う API を提供します。「RTC での修正継続機能の使用」を参照してください。
完全にストリップされていないプログラム。strip -x によってストリップされたプログラムは使用できます。
RTC は、8Mバイトより大きなプログラムのテキスト領域およびデータ領域を処理しません。
実行可能イメージに特殊ファイルを挿入すると、8Mバイトより大きなプログラムのテキスト領域とデータ領域を処理することができます。