第5章 |
|
Sun JavaTM Wireless Toolkit for CLDC には、アプリケーションの動作を監視するためのツールがいくつか用意されています。これらのツールは、コードのデバッグや最適化を行うときに役立ちます。
プロファイラでは、アプリケーション内の各メソッドが追跡されます。アプリケーションの 1 回の実行について、各メソッドに費やされた時間と各メソッドが呼び出された回数が計算されます。アプリケーションの実行を終了し、エミュレータを停止すると、プロファイラのウィンドウが開きます。そこでメソッド呼び出しの情報を閲覧できます。
プロファイラを有効にするには、「編集」->「環境設定」を選択します。図 5-1 を参照してください。左側の区画で「モニター」をクリックします。右側の区画で、「プロファイルを有効」にチェックマークを付けます。すべてのシステム実装メソッドについてプロファイル情報を表示するには、「システムクラスの表示」にチェックマークを付けます。それ以外の場合は、アプリケーションのメソッドへの呼び出しを含んでいるシステムメソッドだけがプロファイラに表示されます。「了解」をクリックします。
続いて、「実行」ボタンをクリックしてアプリケーションを起動します。通常のようにアプリケーションを操作します。操作が完了したら、エミュレータを停止します。プロファイラのウィンドウが開き、アプリケーション内のすべてのメソッド呼び出しに関する情報が表示されます。
呼び出しグラフは、メソッド呼び出しの階層を示します。ほかのメソッドを呼び出すメソッドは、フォルダとして表されます。メソッドをダブルクリックすると、そのメソッドで呼び出されるほかのメソッドを確認できます。ほかのメソッドをまったく呼び出さないメソッドは、グレーの円で表されます。
特定のクラス名やメソッド名を検索できます。「検索」をクリックし、名前を入力します。呼び出しグラフで現在選択されているものから、末尾に向かって検索が実行されます。呼び出しグラフ全体を検索するには、「折り返す」にチェックマークを付けてから、「検索」をクリックします。
呼び出しグラフで別のノードをクリックするたびに、そのノードのメソッドに関する詳細がプロファイラの右側に表示されます。
プロファイラウィンドウの右側には、メソッドに関する詳細情報が表示されます。メソッドの名前、呼び出された回数、およびエミュレータでそのメソッドに費やされた時間を確認できます。実行時間は、4 つの方法で表されます。
いずれかの列をクリックすると、その列を基準にしてソートできます。もう一度クリックすると、昇順ソートと降順ソートを切り替えることができます。
右側の区画には、呼び出しグラフで現在選択されているノードについて、そこに含まれているメソッドが表示されます。すべてのメソッドを表示するには、呼び出しグラフで <root> ノードをクリックします。
プロファイラのセッションを保存するには、プロファイラウィンドウの「保存」ボタンをクリックします。ファイル名を指定します。
プロファイラのセッションをロードするには、「ファイル」->「ユーティリティー」を選択します。「プロファイラ」をクリックし、「起動」を押します。ファイルを選択すると、すべてのセッション情報がロードされたプロファイラのウィンドウが開きます。
多くの MIDP デバイスでは、メモリーの量が限られています。Sun JavaTM Wireless Toolkit for CLDC には、アプリケーションのメモリー使用率を簡単に調べることのできるメモリーモニターが含まれています。アプリケーションで使用されるメモリーの合計量と、オブジェクトごとのメモリー使用率を示す詳細リストを確認できます。
メモリーモニターを有効にするには、「編集」->「環境設定」を選択します。左側の区画で「モニター」をクリックします。「メモリーモニターを有効」にチェックマークを付けます。
次にエミュレータを実行したときに、メモリーモニターのウィンドウが開き、アプリケーションのメモリー使用率の経時変化を示すグラフが表示されます。メモリーモニターを使用すると、作成されるすべてのオブジェクトが記録されるので、アプリケーションの起動が遅くなります。
ヒープサイズを変更するには、「編集」->「環境設定」を選択し、「ストレージ」タブ選択します。詳細は、第 3 章を参照してください。
システムでガベージコレクションを実行させるには、「GC の実行」をクリックします。
注 - エミュレータで観察されるメモリー使用率は、実際のデバイスでのメモリー使用率と正確に一致するわけではありません。エミュレータは実際のデバイスを表すものではありません。サポートされている API を 1 つの方法で実装したものです。 |
アプリケーション内のオブジェクトについて詳細を表示するには、メモリーモニターウィンドウの「オブジェクト」タブをクリックします。
列のタイトルをクリックすると、その列を基準にしてソートできます。
特定のクラス名を検索するには、メモリーモニターウィンドウのメニューから「表示」->「検索」を選択します。
メモリーモニターのセッションを保存するには、「保存」ボタンをクリックします。ファイル名を指定します。
メモリーモニターのセッションをロードするには、「ファイル」->「ユーティリティー」を選択します。「メモリーモニター」をクリックし、「起動」を押します。ファイルを選択すると、すべてのセッション情報がロードされたメモリーモニターのウィンドウが開きます。
MIDP アプリケーションでは、少なくとも HTTP ネットワーク接続を行うことができますが、ほかにもさまざまなネットワーク接続が可能です。ネットワークモニターを使用すると、アプリケーションによってネットワーク上で送受信されている情報を簡単に確認できます。ネットワークでの対話をデバッグする場合や、ネットワークトラフィックの最適化方法を検討する場合に、この機能は便利です。
ネットワークモニターを有効にするには、「編集」->「環境設定」を選択します。左側の区画で「モニター」をクリックします。「ネットワークモニターを有効」にチェックマークを付けます。
次にエミュレータを実行したときに、ネットワークモニターのウィンドウが表示されます。
アプリケーションでネットワーク接続が行われると、その接続に関する情報が取り込まれて表示されます。図は、HTTP 要求と応答を示しています。
左側には、メッセージの階層とメッセージの一部分が表示されます。メッセージまたはメッセージの一部分をクリックすると、その詳細がネットワークモニターの右側に表示されます。メッセージまたはメッセージの一部分をダブルクリックすると、メッセージを展開または折りたたむことができます。
メッセージ本文は、16 進値の生データおよび対応するテキストで表示されます。
注 - すでに送信の準備に入っているメッセージを調べることもできます。不完全なメッセージは、メッセージツリー内でボールドで強調表示されます。 |
フィルタは、ネットワークトラフィックの一部分を調べるときに役立ちます。フィルタ設定は、使用するネットワークプロトコルだけに適用されます。
フィルタを使用するには、「フィルタ設定」をクリックします。必要に応じてフィルタ設定を変更します。
フィルタ設定の入力が完了したら、「了解」をクリックしてネットワークモニターに戻ります。「フィルタ」チェックボックスにチェックマークが付きます。これは、フィルタが使用されていることを示します。フィルタを無効にしてすべてのメッセージを表示するには、チェックマークを解除します。
メッセージツリーを特定の順序で並べ替えるには、「ソート」コンボボックスをクリックし、条件を選択します。
ネットワークモニターのセッションを保存するには、ネットワークモニターウィンドウのメニューから、「ファイル」->「保存」を選択するか、「ファイル」->「別名保存」を選択します。ファイル名を指定します。
ネットワークモニターのセッションをロードするには、「ファイル」->「ユーティリティー」を選択します。リストから「ネットワークモニター」を選択し、「起動」を押します。ファイルを選択すると、すべてのセッション情報がロードされたネットワークモニターのウィンドウが開きます。
ネットワークモニターからすべてのメッセージを削除するには、ネットワークモニターのメニューから「編集」->「消去」を選択します。
Copyright© 2007, Sun Microsystems, Inc. All rights reserved.