JavaTM 2 Platform
Standard Ed. 6

java.lang.ref
類別 ReferenceQueue<T>

java.lang.Object
  繼承者 java.lang.ref.ReferenceQueue<T>

public class ReferenceQueue<T>
extends Object

參考佇列,在檢測到適當的可到達性更改後,垃圾回收器將已註冊的參考物件添加到該佇列中。

從以下版本開始:
1.2

建構子摘要
ReferenceQueue()
          建構一個新的參考物件佇列。
 
方法摘要
 Reference<? extends T> poll()
          輪詢此佇列,查看是否存在可用的參考物件。
 Reference<? extends T> remove()
          移除此佇列中的下一個參考物件,阻塞到某個物件變得可用為止。
 Reference<? extends T> remove(long timeout)
          移除此佇列中的下一個參考物件,阻塞到有一個物件變得可用或者給定的逾時期滿了為止。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

ReferenceQueue

public ReferenceQueue()
建構一個新的參考物件佇列。

方法詳細資訊

poll

public Reference<? extends T> poll()
輪詢此佇列,查看是否存在可用的參考物件。如果存在一個立即可用的物件,則從該佇列中移除此物件並返回。否則此方法立即返回 null

返回:
如果存在一個立即可用的物件,則返回該物件。否則返回 null

remove

public Reference<? extends T> remove(long timeout)
                              throws IllegalArgumentException,
                                     InterruptedException
移除此佇列中的下一個參考物件,阻塞到有一個物件變得可用或者給定的逾時期滿了為止。

此方法不提供實時保證:它安排了逾時時間,就像調用 Object.wait(long) 方法一樣。

參數:
timeout - 如果為正,則在等待要在此佇列中添加的參考時會阻塞 timeout 毫秒。如果逾時值為零,則無限期地阻塞。
返回:
如果在指定的逾時期內有一個參考對象可用,則返回該物件;否則返回 null
拋出:
IllegalArgumentException - 如果逾時參數的值為負。
InterruptedException - 如果逾時等待被中斷

remove

public Reference<? extends T> remove()
                              throws InterruptedException
移除此佇列中的下一個參考物件,阻塞到某個物件變得可用為止。

返回:
某個參考物件,阻塞到某個物件變得可用為止。
拋出:
InterruptedException - 如果等待被中斷

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only