1

私は、Javaデバッグを行うときにバックトラックできるかどうかの答えを探していました。たとえば、私がコードを持っている場合:

int x = 1
int y = 0

//Exception will happen here
int z = x/y

そして、私が例外にぶつかっているなら、私は戻りたいと思います。また、フレームをドロップするだけでなく、ヒープに加えられた実際の変更を元に戻します。それは現在可能ですか?

前もって感謝します。

4

3 に答える 3

2

Chronon TimeTravellingDebuggerというツールがあります

それは主張します...

概要

Chronon Time Traveling Debuggerを使用すると、Chrononの記録を再生して、欠陥の根本原因を簡単に見つけることができます。これは、数日/数か月間実行され、高度にマルチスレッド化された長時間実行プログラムのデバッグを可能にするために、特別にゼロから構築されています。

デバッガーはEclipseにシームレスにプラグインし、ワークフローに自然に適応します。Chronon DebuggerのEclipse統合を使用して、Eclipse内から開発マシンにプログラムを簡単に記録することもできます。

于 2012-01-04T11:15:44.477 に答える
1

ある種のundoスタックを実装しない限り、それは不可能です。これは、実行する内容によっては、極端に過剰なエンジニアリングになる可能性があります。ヒープオブジェクトを変更不可にし、例外をスローせずにすべてが完了した後でのみ呼び出し元に表示されるポインターを変更すると、必要な動作の比較的良い近似が得られますが、tiスレッドを作成するのは困難です。 -過度の同期を使用せずに安全であり、プロセスに多くの価値を追加しない大量の定型コードを生成する可能性があります...

于 2012-01-04T11:07:52.513 に答える
1

全知デバッガーを試しましたか?

于 2012-01-04T11:13:30.280 に答える