私はこの同様の質問を認識していますが、私のものは ThreadLocal クリーンアップの特定のケースに関するものです。
スレッド単位で状態を維持するために、(不明な) 数の ThreadLocal を静的な Vector に格納しています。「貪欲な」スレッドでは、使用可能な ThreadLocal がさらに必要になる場合があり、その結果、Vector のサイズが大きくなります。私のシナリオでは ThreadLocal.remove() を使用したクリーンアップは問題ではありませんが、貪欲なスレッドが終了した後、ベクトルのサイズを縮小することは可能でしょうか、それとも成長するだけに縛られているのでしょうか (またはせいぜい同じままでしょうか) )。
明確にするために:私の理解では、特定の ThreadLocal には、スレッドごとに異なるインスタンスが存在するということです。では、静的な Vector がスレッド A からアクセスされたときに、既存のすべてのスレッドで ThreadLocal T の値が空であることをどのように知ることができるでしょうか?
ご協力いただきありがとうございます