Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| J2ME CDC
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.lang.ref
Class ReferenceQueue

    java.lang.Object
      |
      +--java.lang.ref.ReferenceQueue

public class ReferenceQueue
extends Object

Reference queues, to which registered reference objects are appended by the garbage collector after the appropriate reachability changes are detected.

Since:
  1.2

Constructor Summary
`ReferenceQueue()` Constructs a new reference-object queue.

Method Summary
`Reference` | `poll()` Polls this queue to see if a reference object is available, returning one immediately if so.
`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`

Constructor Detail

### ReferenceQueue

    public ReferenceQueue()

  Constructs a new reference-object queue.

Method Detail

### poll

    public Reference poll()

  Polls this queue to see if a reference object is available, returning one immediately if so. If the queue is empty, this method immediately returns `null`.
  Returns:
    A reference object, if one was immediately available, otherwise `null`

### remove

    public Reference remove(long timeout)
                     throws IllegalArgumentException,
                            InterruptedException

  Removes the next reference object in this queue, blocking until either one becomes available or the given timeout period expires.
  Parameters:
    `timeout` - If positive, block for up `timeout` milliseconds while waiting for a reference to be added to this queue. If zero, block indefinitely.
  Returns:
    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 remove()
                     throws InterruptedException

  Removes the next reference object in this queue, blocking until one becomes available.
  Throws:
    `InterruptedException` - If the wait is interrupted

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| J2ME CDC
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Java is a trademark or registred trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo, Alto, California, 94303, U.S.A All Rights Reserved.