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に設定されている)堅牢なコードにしてください