Java by API/java.lang.ref/ReferenceQueue
ReferenceQueue: remove()
import java.lang.ref.Reference;
import java.lang.ref.ReferenceQueue;
import java.lang.ref.WeakReference;
public class Main {
public static void main(String[] argv) throws Exception {
ReferenceQueue rq = new ReferenceQueue();
WeakReference<String> wr = new WeakReference<String>("string", rq);
while (true) {
Reference r = rq.remove();
if (r == wr) {
System.out.println("no longer referenced");
}
}
}
}