System.gc()の紹介

System.gc()ガベージコレクタのために、ガベージコレクタを呼び出すと、未使用の再利用されます

System.gc()は回復の基準でした。

  リサイクルオブジェクトは、最大任意の変数を指していません

JDKの実装

パブリック 静的 ボイドGC(){ 
    Runtime.getRuntime()GC()。
}

RuntimeクラスのGCメソッドを呼び出し

公共 ネイティブ ボイド GC();

ランタイムクラスGCメソッドはネイティブメソッド、その真の実現を参照するにはJVMへのコードのみです

JVMの実装

JNIEXPORT ボイドJNICALL 
Java_java_lang_Runtime_gc(JNIEnvの * ENV、jオブジェクト
{ 
    JVM_GC()。
}

jvm.cppに実装直接呼び出しJVM_GC()メソッド、

これがダウンして見て、あなたは見つけるでしょう、にSystem.gc()は、フルGCをトリガ

フルGC)は、長いアプリケーションに大きな影響をとり、一般的にSystem.gc(の使用はお勧めしません。

外部ヒープメモリを使用した場合、外部メモリヒープでない場合、十分なスペースアプリケーションでは、JDKはにSystem.gcをトリガする()、回収します

提案:

  機能GCを使用しないでください。

  仮想マシンがメモリを管理するように、(未使用の変数がnullに設定されている)堅牢なコードにしてください

  

おすすめ

転載: www.cnblogs.com/baby123/p/11058222.html