PhantomReference Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo.
[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
- Herencia
- Atributos
Comentarios
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. Las referencias fantasma se suelen usar para programar acciones de limpieza posteriores al mortem.
Supongamos que el recolector de elementos no utilizados determina en un momento determinado que un objeto es fantasma accesible. En ese momento borrará atómicamente todas las referencias fantasma a ese objeto y todas las referencias fantasma a cualquier otro objeto fantasma desde el que se pueda acceder a ese objeto. Al mismo tiempo o en algún momento posterior, pondrá en cola las referencias fantasma recién borradas registradas con colas de referencia.
Para asegurarse de que un objeto reclamable permanece así, es posible que no se recupere el referente de una referencia fantasma: el get método de una referencia fantasma siempre devuelve null.
Agregado en la versión 1.2.
Java documentación para java.lang.ref.PhantomReference.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| PhantomReference(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
| PhantomReference(Object, ReferenceQueue) |
Crea una nueva referencia fantasma que hace referencia al objeto especificado y se registra con la cola especificada. |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsEnqueued |
Comprueba si este objeto de referencia está en su cola asociada, si existe. (Heredado de Reference) |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| JniPeerMembers |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
Métodos
| Nombre | Description |
|---|---|
| Clear() |
Borra este objeto de referencia. (Heredado de Reference) |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| Enqueue() |
Agrega este objeto de referencia a la cola con la que está registrado, si existe. (Heredado de Reference) |
| Equals(Object) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| Get() |
Devuelve el referente de este objeto de referencia. (Heredado de Reference) |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| RefersTo(Object) |
Comprueba si el referente de este objeto de referencia es |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto . (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. (Heredado de JavaObject) |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Los objetos de referencia fantasma, que se colocan en cola después de que el recopilador determine que sus referentes pueden reclamarse de otro modo. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |