Skip to main content

ソフトリファレンスとは何ですか?

java® in the Java言語のコーディング、参照は、プログラマーがそれらの参照を知らない場合でも、オブジェクト、文字列、変数に常に作成されます。これらの参考文献は、ごみコレクターと直接通信します。これは、不要な情報を収集し、それを捨てる関数であり、メモリを取り上げないようにします。デフォルトでは、すべての参照は強力な参照であり、コーディングなしで設定されます。つまり、ガベージコレクターにはリリースされません。ソフトリファレンスにより、データを捨てることができます。これは、すべての強力な参照の中間レベルの参照です。プログラマーは参照コマンドを記述する必要はありません。参照は自動的に行われ、デフォルトでは強力な参照です。これは、スクリプト全体に必要な積分オブジェクトにリンクされているため、参照からのデータを捨てることができないことを意味します。たとえば、プログラマーがシリアル番号が使用されるスクリプトを構築したり、他の一時的な情報を収集または作成したりする場合、この情報を保持することは有害になります。Java&Reg;プログラムは、不要な場合でも情報を捨てることを拒否し、スクリプトは機能するにはますます多くのメモリが必要になります。データをリリースできることをガベージコレクターに伝えます。リリースされると、文字列またはセクションはnullとして読み取られます。ガベージコレクターは、その設定に応じて、データをいつ削除するかを決定します。弱い参照は最も弱く、そのデータはすぐに捨てられます。一時的なデータを数回使用できるスクリプトに最適なソフト参照は、次に並んでいます。ファントムの参照は、1秒以内にほぼ自動的に捨てられ、控えめに使用する必要があります。メモリがいっぱいの場合、ゴミコレクターは最初にすべての弱い参照を破壊します。すべての弱い参照がなくなり、メモリがまだデータをパージする必要がある場合、次にソフト参照が放り出されます。