1.背景
伝統的なCまたはC ++プログラマは、ガベージコレクションのために表示されている割り当てられたメモリの回復のために責任があります。プログラマが解放したときに、メモリがどうあるべきかを知らないので、それはいくつかの回復につながる、その結果、メモリ不足割り当てることができない「メモリリーク。」スローダウンし、麻痺プログラムにシステムを引き起こします。
2。メモリリークとは何ですか?
いくつかは、システムが麻痺の現象を遅くし、さらにプログラムさせ、メモリ回復のアウト割り当てることができません。
ごみの欠点をディスプレイ3:
1)メモリリークを起こし、タイムリーな回復プログラム無用メモリを忘れて、システムのパフォーマンスが低下します
2)コアは、システムクラッシュをもたらす、プログラムエラー回復手順をライブラリ
GCで4.javaガベージコレクションのメカニズム、(ガベージコレクション)
Javaのメモリの割り当てと回復手順がバックグラウンドで自動的にJREによって行われ、このメカニズムは、「ガベージコレクション、ガベージコレクション、すなわちGCと呼ばれています。
JREは、検査および制御のためのハイパースレッディングを提供プログラマがガベージコレクション時間とシーケンスを制御することができないので、CPUは、アイドルまたはメモリ不足である場合、それは一般的に、自動ガベージコレクションです。
Javaヒープメモリは、クラスの即ち「目的」、インスタンスを格納するためのランタイムデータ領域です。プログラム内のすべてのオブジェクトは、スタックメモリ上にある、ヒープメモリは責任ガベージコレクションメカニズムによって通常です。ガベージコレクションは、動的なストレージ管理技術であり、それは自動的に「オブジェクトはもはやプログラムによって参照される」特定のアルゴリズムでゴミを解放しません。
5.javaガベージコレクションのメカニズムは、主に二つの状況が回復しています。
オブジェクトに割り当てられた元のメモリへのオブジェクト参照は、そのメモリがガベージになっていない(1)。オブジェクトが参照されなくなった場合、メモリ空間が再利用されません
(2)ガベージコレクションは、メモリ記録の断片化を解除することができます。作成したオブジェクトとガベージコレクタがオブジェクトを破棄することによって占有されていたメモリ領域を解放するので、メモリが断片化されます。「フラグメント」オブジェクトに割り当てられたメモリの空きメモリブロックとの間の領域を意味し、処理は、スタックの一端にデブリヒープメモリを占有し、JVMは、メモリ内に順序付けされる新しいオブジェクトに再割り当て。
ガベージコレクションの6利点
(1)は、プログラミング効率を向上させます。プログラマは、メモリごみに時間を費やす必要はありません。
(2)プログラムの整合性は、Javaのセキュリティ・ポリシーの重要な部分である保護します。
ガベージコレクションの7欠点
ガベージコレクションは、プログラムのパフォーマンスに影響を与えます。Java仮想マシンは、プログラム便利なオブジェクトを追跡する必要があるため、オブジェクトを回復する必要があるかを判断するために、このように、いくつかの時間のプロセッサがかかります
8.ガベージコレクションが特徴。
(1)ガベージコレクションの目的は、未使用メモリ空間オブジェクトを回復することであり、このメモリは、このようなデータベース接続、ディスクIOと他のリソース無力などの物理リソースにメモリを解放するJVMのガベージコレクションのメモリ空間です。
オブジェクトへのヌル・オブジェクト参照の値(2)は回復可能オブジェクトを意味するものです
9.プログラママニュアルガベージコレクションと無料のアップメモリ空間:
ガベージコレクションは、オブジェクト.finalize()またはにSystem.gc()を介して行われます。