清理注册表

public class CleanupRegistry

维护 ReferenceQueue,并在队列中的每个对象被垃圾回收后执行 Runnable

公共构造函数

CleanupRegistry (HashSet <CleanupItem<T>> cleanupItemHashSet, ReferenceQueue <T> referenceQueue)

公共方法

无效
destroyAllResources()
忽略引用计数并释放任何关联资源
长整型
reclaimReleasedResources()
轮询 ReferenceQueue 以了解垃圾回收的对象并运行关联的 Runnable
无效
register(T 跟踪对象、Runnable cleanupCallback)
trackedOBject 添加到 ReferenceQueue

继承的方法

公共构造函数

public CleanupRegistry ()

public CleanupRegistry (HashSet<CleanupItem<T>> cleanupItemHashSet, ReferenceQueue<T> referenceQueue)

参数
cleanupItemHashSet
referenceQueue

公共方法

public void destroyAllResources ()

忽略引用计数并释放任何关联资源

public long reclaimReleasedResources ()

轮询 ReferenceQueue 以了解垃圾回收的对象并运行关联的 Runnable

返回
  • 剩余资源数量。

public void register (T TrackObject, Runnable cleanupCallback)

trackedOBject 添加到 ReferenceQueue

参数
跟踪的对象 要跟踪的目标。
cleanupCallback 将在 trackedOBject 处理后调用。