public class ReferenceQueue<T> extends Object
Constructor and Description |
---|
ReferenceQueue()
Constructs a new reference-object queue.
|
Modifier and Type | Method and Description |
---|---|
Reference<? extends T> |
poll()
Polls this queue to see if a reference object is available.
|
Reference<? extends T> |
remove()
Removes the next reference object in this queue, blocking until one becomes available.
|
Reference<? extends T> |
remove(long timeout)
Removes the next reference object in this queue, blocking until either one becomes available or
the given timeout period expires.
|
@Nullable public Reference<? extends T> poll()
null
public Reference<? extends T> remove() throws InterruptedException
InterruptedException
- If the wait is interrupted@Nullable public Reference<? extends T> 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 to 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 negativeInterruptedException
- If the timeout wait is interrupted