ReferenceQueue
  public
  
  
  
  class
  ReferenceQueue
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | java.lang.ref.ReferenceQueue<T> | 
Reference queues, to which registered reference objects are appended by the garbage collector after the appropriate reachability changes are detected.
Summary
| Public constructors | |
|---|---|
| 
      ReferenceQueue()
      Constructs a new reference-object queue. | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        Reference<? extends T> | 
      poll()
      Polls this queue to see if a reference object is 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. | 
| 
        
        
        
        
        
        Reference<? extends T> | 
      remove()
      Removes the next reference object in this queue, blocking until one becomes available. | 
| Inherited methods | |
|---|---|
Public constructors
ReferenceQueue
public ReferenceQueue ()
Constructs a new reference-object queue.
Public methods
poll
public Reference<? extends T> poll ()
Polls this queue to see if a reference object is available. If one is available without further delay then it is removed from the queue and returned. Otherwise this method immediately returns null.
| Returns | |
|---|---|
| Reference<? extends T> | A reference object, if one was immediately available,
          otherwise null | 
remove
public 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.
 This method does not offer real-time guarantees: It schedules the
 timeout as if by invoking the Object.wait(long) method.
| Parameters | |
|---|---|
| timeout | long: If positive, block for up totimeoutmilliseconds while waiting for a reference to be
                  added to this queue.  If zero, block indefinitely. | 
| Returns | |
|---|---|
| Reference<? extends T> | A reference object, if one was available within the specified
          timeout period, otherwise null | 
| Throws | |
|---|---|
| IllegalArgumentException | If the value of the timeout argument is negative | 
| InterruptedException | If the timeout wait is interrupted | 
remove
public Reference<? extends T> remove ()
Removes the next reference object in this queue, blocking until one becomes available.
| Returns | |
|---|---|
| Reference<? extends T> | A reference object, blocking until one becomes available | 
| Throws | |
|---|---|
| InterruptedException | If the wait is interrupted | 
