ThreadLocalの
ローカル変数を通します。スレッド独自の変数を所有するスレッド。
セット()。
実際に(にThread.currentThread()。地図(ThreadLocalの格納され 、データ)) 現在のスレッドのマップ。したがって、現在のスレッドのみを取得し、スレッド間で互いに分離することができ
ThredLocalMapがThreadLocalの格納され、ThreadLocalMapキーは、メモリリークを防止するための弱参照(GCが自動的にクリア)です。回避GCは自動的にキー弱参照をクリアした後、速やかにThreadLocalの使用後に削除する必要があり、メモリリークが生成されます
ThreadLocalの目的:
同じ接続を確保するための宣言的トランザクション
強い弱いはfalse
[エントリのThreadLocalMapが弱い参照弱参照を継承し、経験は、GC回収する】
メモリが十分にごみ収集ないSoftReference、:ソフト参照。これは、バッファリングのために使用することができる
限り回復がGCされるように、弱い参照:弱参照を。限り強い参照が回収されるように、弱参照は(容器内)を回収しなければならない
ファントム参照:phantomReferenceを、主にJVMに。仮想基準オブジェクトが回収された場合、復旧情報は、キューのコンストラクタに渡されます、
NIO DirectByteBufferダイレクトメモリは、JVMが直接管理することはありませんが、オペレーティングシステム(外部のヒープメモリ)管理によって管理されます。基準仮想キューオブジェクトによって回収されていますが通知