src/share/classes/java/lang/ref/Reference.java

Print this page

        

*** 130,139 **** --- 130,140 ---- super(g, name); } public void run() { for (;;) { + try { Reference<Object> r; synchronized (lock) { if (pending != null) { r = pending; pending = r.discovered;
*** 167,176 **** --- 168,179 ---- continue; } ReferenceQueue<Object> q = r.queue; if (q != ReferenceQueue.NULL) q.enqueue(r); + + } catch (OutOfMemoryError x) { } } } } static {