PhantomReference Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены.
[Android.Runtime.Register("java/lang/ref/PhantomReference", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public class PhantomReference : Java.Lang.Ref.Reference
[<Android.Runtime.Register("java/lang/ref/PhantomReference", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
type PhantomReference = class
inherit Reference
- Наследование
- Атрибуты
Комментарии
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. Фантомные ссылки чаще всего используются для планирования действий по очистке после смерти.
Предположим, сборщик мусора определяет в определенный момент времени, что объект является фантомным доступом. В то время она будет атомарно очищать все фантомные ссылки на этот объект и все фантомные ссылки на любые другие фантомные доступные объекты, из которых этот объект доступен. В то же время или в некоторое время он закрегирует эти недавно очищаемые фантомные ссылки, зарегистрированные в очередях ссылок.
Чтобы убедиться, что возвращаемый объект остается таким образом, ссылка на фантомную ссылку не может быть извлечена: get метод фантомной ссылки всегда возвращается null.
Добавлено в версии 1.2.
Java документации по java.lang.ref.PhantomReference.
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".
Конструкторы
| Имя | Описание |
|---|---|
| PhantomReference(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
| PhantomReference(Object, ReferenceQueue) |
Создает новую фантомную ссылку, которая ссылается на заданный объект и регистрируется в заданной очереди. |
Свойства
| Имя | Описание |
|---|---|
| Class |
Возвращает класс среды выполнения этого |
| Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
| IsEnqueued |
Проверяет, находится ли этот ссылочный объект в связанной очереди, если таковой имеется. (Унаследовано от Reference) |
| JniIdentityHashCode |
Возвращает хэш-код удостоверения, назначенный этому Java одноранговой среде выполнения взаимодействия. (Унаследовано от Object) |
| JniManagedPeerState |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| JniPeerMembers |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
| PeerReference |
Возвращает ссылку на объект JNI для этого Java однорангового узла. (Унаследовано от Object) |
| ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
| ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
Методы
| Имя | Описание |
|---|---|
| Clear() |
Очищает этот эталонный объект. (Унаследовано от Reference) |
| Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| Dispose() |
Освобождает ресурсы, удерживаемые этим Java одноранговым узлом. (Унаследовано от Object) |
| Dispose(Boolean) |
Освобождает ресурсы, удерживаемые этим Java одноранговым узлом. (Унаследовано от Object) |
| DisposeUnlessReferenced() |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| Enqueue() |
Добавляет этот ссылочный объект в очередь, с которой она зарегистрирована, если она есть. (Унаследовано от Reference) |
| Equals(Object) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| Equals(Object) |
Указывает, равен ли другой объект этому объекту. (Унаследовано от Object) |
| Get() |
Возвращает референт этого эталонного объекта. (Унаследовано от Reference) |
| GetHashCode() |
Возвращает хэш-значение кода для объекта. (Унаследовано от Object) |
| JavaFinalize() |
Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет. (Унаследовано от Object) |
| Notify() |
Просыпается один поток, ожидающий монитора этого объекта. (Унаследовано от Object) |
| NotifyAll() |
Просыпает все потоки, ожидающие монитора этого объекта. (Унаследовано от Object) |
| RefersTo(Object) |
Проверяет, является |
| SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| ToArray<T>() |
Создает управляемый массив из этого Java оболочки массива. (Унаследовано от Object) |
| ToString() |
Возвращает строковое представление объекта. (Унаследовано от Object) |
| UnregisterFromRuntime() |
Отменяет регистрацию этого Java однорангового узла из среды выполнения взаимодействия. (Унаследовано от Object) |
| Wait() |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, путем <><уведомления/>em или <эм>прерванного</em.> (Унаследовано от Object) |
| Wait(Int64, Int32) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
| Wait(Int64) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IJavaPeerable.Disposed() |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| IJavaPeerable.Finalized() |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. (Унаследовано от JavaObject) |
Методы расширения
| Имя | Описание |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Возвращает имя JNI типа экземпляра |
| JavaAs<TResult>(IJavaPeerable) |
Попробуйте принуждать к типу |
| JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
| JavaCast<TResult>(IJavaObject) |
Фантомные эталонные объекты, которые закруживаются после того, как сборщик определяет, что их ссылочные объекты могут быть восстановлены. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Попробуйте принуждать к типу |