メソッドを開始および終了するたびにログメッセージを出力するようにコードを変更する途中でした。おそらくEclipse用の機能やプラグインがあり、それを追跡して表示できると思ったとき。結局のところ、これはJavaコンパイラが手元に持っている情報です。
私が必要としているのは、各メソッドが呼び出されて返される順序を確認することです。
メソッド名とその上のすべてのスタックが出力されるので、誰が呼び出したかを知ることができます。
オプションで、入力と戻りの時刻と差を出力する場合は、プロファイリングに適した情報になります。
過去にTraceViewを試したことを覚えていますが、それがanswrかどうかはわかりませんが、情報が多すぎて何が起こっているのかを明確に把握できなかったことをはっきりと覚えています。
誰かがそれを適切に使用して私が必要とする情報だけを取得する方法を知っているなら、それも素晴らしいでしょう。
更新:
TraceViewと彼のコンパニオンdmtracedumpを使用するのに苦労しています。想定外のことをしたので、dmtracedumpコードソースを検索して調べました。
これは私が受け取っているエラーメッセージを生成するコードです。
TraceData data1;
DataKeys* dataKeys = parseDataKeys(&data1, gOptions.traceFileName,
&sumThreadTime);
if (dataKeys == NULL) {
fprintf(stderr, "Cannot read trace.\n");
exit(1);
}
しかし、トレースファイルを修正する方法がわかりません。
それはによって生成されます Debug.startMethodTracing("tracefile");
Javaコンパイラに各メソッド呼び出しを出力するように指示する方法があればいいのにと思います。この時点で私はかなりイライラしています。