2012-03-23 6 views
3

Eclipseのデバッグ・モードが、print文やログに頼っているとよくわかりました。しかし、私は、デバッグモードのパフォーマンスが、特にがファイルI/Oに影響されているようです。ファイルをロードするには、の方法(時間が25倍くらい)が必要です。面白いことになる前にワークフローでかなり大きなファイルをロードする必要があるため、これは特に不便です。Eclipseのデバッグ・モードでファイルI/Oが非常に遅い

この問題には賢明な回避策がありますか?私は実際にファイルのロード中にデバッグする必要はありません。そのため、プロセスのある時点でデバッグモードにジャンプする方法がありますか?

this questionとは異なり、私はこれが自分のワークスペースの状態に問題があるとは思わないことに注意してください。

答えて

1

IOを低速で(小さな断片で)読み込み、デバッグはそれを増幅している可能性があります。なぜなら、すべての関数呼び出しにオーバーヘッドがあるからです。

NetBeansはプロファイルするためにどの機能を指定する方法を持っているので、私は、Eclipseで同様のオプションを探し、その後、それはdoesnの場合java.*名前空間で何か、またはあなたのIO特定のコードのいずれかをプロファイルしていないことを言うだろう助けてください。

また、ファイルを高速で読み込んでいることを確認したいと思います(バッファ付き入力ストリームを使用し、Scannerなどを使用しない)。 NIOにも役立つものがあるかもしれませんが、私はそれに精通していません。

+0

これは本当に助けにはならない写真と8001

より詳細なポートを使用してリモートJavaアプリケーション]を選択します私。 IOのパフォーマンスはデバッグしていないときには問題ありません。十分に優れているので、マイクロ最適化には興味がありませんし、もっと重要な懸念があります。私はNetBeansを使用していないし、明らかにEclipseでこのようなオプションを見つけることができたら、私はこの質問をしなかっただろう。 –

2

eclipseのリモートデバッグ機能を使用して、実行中のアプリケーションにフックできます。あなたは、いくつかのパラメータを使用してアプリを起動する必要があります。

java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y suspend=y -jar yourapp.jar

は、その後、あなたのデバッグ構成で here

関連する問題