0

Weblogic でホストされている Web アプリケーションに YourKit Java プロファイラーを使用しています。現在メモリリークについて調査中です。プロファイラーは、25% のメモリを占有している数 25 万の char[] オブジェクトを示しています。

これらの char[] オブジェクトが作成される場所について、アプリケーションを調べてみました。驚いたことに、何も見つかりませんでした。ここで何か間違ったことをしていますか?Weblogic は内部でこれらの Array オブジェクトを作成していますか?

これらのオブジェクトを作成しているコードの正確な部分をアプリケーション内で見つけるにはどうすればよいですか? ありがとう。

よろしく、シッダールス

4

2 に答える 2

2

おそらくこれらの文字配列は、java.lang.String の内部部分を形成します。プロファイラーに、現在メモリ内にある文字列の概要と重複が多いかどうかを確認するよう依頼する必要があります。

于 2011-03-02T23:32:43.507 に答える
1

ローランドは、おそらく文字列にある char[] について正しいです。コードの静的分析にはFindBugsを使用することをお勧めします。これは通常、多くの良いものを見つけます。セッションオブジェクトはより永続的であるため、他にすべきことはセッションオブジェクトを調べることです。

YourKit については知らないので、実際に割り当てソースを追跡することについてコメントすることはできません。申し訳ありません。

于 2011-03-02T23:39:33.660 に答える