Spec-Zone .ru
спецификации, руководства, описания, API
|
public class PhantomReference<T> extends Reference<T>
Если сборщик "мусора" определит в определенный момент вовремя, что референт фантомной ссылки является достижимым фантомом, то тогда или в некоторое более позднее время это будет ставить в очередь ссылку.
Чтобы гарантировать, что исправимый объект остается так, референт фантомной ссылки не может быть получен: get
метод фантомной ссылки всегда возвращается null
.
В отличие от мягких и слабых ссылок, фантомные ссылки автоматически не очищаются сборщиком "мусора", поскольку они ставятся в очередь. Объект, который достижим через фантомные ссылки, останется так, пока все такие ссылки не будут очищены, или они непосредственно становятся недостижимыми.
Конструктор и Описание |
---|
PhantomReference(T referent, ReferenceQueue<? super T> q)
Создает новую фантомную ссылку, которая обращается к данному объекту и регистрируется в данной очереди.
|
public PhantomReference(T referent, ReferenceQueue<? super T> q)
Возможно создать фантомную ссылку с очередью null, но такая ссылка абсолютно бесполезна: метод Its get будет всегда возвращать нуль и, так как у него нет очереди, он никогда не будет ставиться в очередь.
referent
- объект новая фантомная ссылка обратится кq
- очередь, в которой ссылка должна быть зарегистрирована, или null, если регистрация не требуется
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.