1

在图书馆中,我有一些ThreadLocal带有一些对象的变量。我想将所有这些对象累积在一个数据结构中,并能够在需要时对其进行迭代。另一方面,当应用场景包括数千个线程的创建和死亡时,我不希望这个数据结构被污染(此外,这可能会导致内存泄漏)。所以解决方案应该从对象中清除数据结构,从本地到死线程。

我认为解决方案应该类似于WeakHashMapwith WeakReference<Thread>in keys,它应该另外检查Thread在常规删除过程中是否不存在。迭代结束Map.values()

是否有这种数据结构的现有实现?还是有一些更好的解决方案可以解决我的问题?

4

0 回答 0