0

私は長い間Javaを使用してきましたが、メモリリークについて考え始めています。プログラムをより動的にしたいので、クラスローダーを使用するつもりです。たくさんのグーグル検索の後、参照解除してもロードされたままの醜いオブジェクトについて詳しく読みました。

プログラムのメモリ リークが心配です。すべてのプログラムである程度のメモリ リークが発生することはわかっていますが、Java は実際にメモリ リークの見苦しい側にいるのでしょうか。その部門での私の質問:

Java はメモリ リークに対処する価値がありますか? Java のメモリ リークは、Google が音を立てたほど巨大ですか?

クラスローダーでオブジェクトを参照する方法や、オブジェクトを逆参照する方法など、メモリ リークを抑えるコードを作成するにはどうすればよいですか?

オブジェクトの保持に関する問題のない (または問題の悪い) クラスローダーの代替手段はありますか?

4

1 に答える 1

2

クラスローダのメモリ リークは、何らかの方法で多くの動的なクラス ローディングを行う場合にのみ影響します。例えば:

  • Class.forName()繰り返し電話することで
  • 動的プロキシ クラスを繰り返し作成することによって
  • Web アプリケーションのホット再デプロイを繰り返す (例: Tomcat を使用)

ほとんどのアプリケーションはこれらのことを行わないため、クラスローダーのメモリ リークについて心配する必要はありません。

于 2013-09-02T05:11:50.597 に答える