|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.lang.ref.ReferenceQueue
Reference queues, to which registered reference objects are appended by the garbage collector after the appropriate reachability changes are detected.
Nested Class Summary | |
private static class |
ReferenceQueue.Lock
|
private static class |
ReferenceQueue.Null
|
Field Summary | |
(package private) static ReferenceQueue |
ENQUEUED
|
private Reference |
head
|
private ReferenceQueue.Lock |
lock
|
(package private) static ReferenceQueue |
NULL
|
private long |
queueLength
|
Constructor Summary | |
ReferenceQueue()
Constructs a new reference-object queue. |
Method Summary | |
(package private) boolean |
enqueue(Reference r)
|
Reference |
poll()
Polls this queue to see if a reference object is available. |
private Reference |
reallyPoll()
|
Reference |
remove()
Removes the next reference object in this queue, blocking until one becomes available. |
Reference |
remove(long timeout)
Removes the next reference object in this queue, blocking until either one becomes available or the given timeout period expires. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
static ReferenceQueue NULL
static ReferenceQueue ENQUEUED
private ReferenceQueue.Lock lock
private Reference head
private long queueLength
Constructor Detail |
public ReferenceQueue()
Method Detail |
boolean enqueue(Reference r)
private Reference reallyPoll()
public Reference poll()
null
public Reference remove(long timeout) throws IllegalArgumentException, InterruptedException
This method does not offer real-time guarantees: It schedules the
timeout as if by invoking the Object.wait(long)
method.
timeout
- If positive, block for up timeout
milliseconds while waiting for a reference to be
added to this queue. If zero, block indefinitely.
null
IllegalArgumentException
- If the value of the timeout argument is negative
InterruptedException
- If the timeout wait is interruptedpublic Reference remove() throws InterruptedException
InterruptedException
- If the wait is interrupted
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |