Lenguaje

Cleaner Clase

Definición

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

[Android.Runtime.Register("java/lang/ref/Cleaner", ApiSince=33, DoNotGenerateAcw=true)]
public sealed class Cleaner : Java.Lang.Object
[<Android.Runtime.Register("java/lang/ref/Cleaner", ApiSince=33, DoNotGenerateAcw=true)>]
type Cleaner = class
    inherit Object
Herencia
Atributos

Comentarios

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

Las acciones de limpieza se #register(Object object, Runnable action) registered ejecutan después de que se notifique al limpiador que el objeto se ha convertido en fantasma accesible. El limpiador usa PhantomReference y ReferenceQueue para recibir una notificación cuando cambia la accesibilidad.

Cada limpiador funciona de forma independiente, administrando las acciones de limpieza pendientes y controlando subprocesos y terminación cuando el limpiador ya no está en uso. El registro de una referencia de objeto y la acción de limpieza correspondiente devuelve un Cleanable Cleanable. El uso más eficaz es invocar explícitamente el Cleanable#clean clean método cuando el objeto está cerrado o ya no es necesario. La acción de limpieza es un objeto Runnable que se va a invocar como máximo una vez cuando el objeto se ha convertido en fantasma accesible a menos que ya se haya limpiado explícitamente. Tenga en cuenta que la acción de limpieza no debe hacer referencia al objeto que se está registrando. Si es así, el objeto no se convertirá en fantasma accesible y la acción de limpieza no se invocará automáticamente.

La ejecución de la acción de limpieza se realiza mediante un subproceso asociado al limpiador. El subproceso se ejecuta hasta que todas las acciones de limpieza registradas se han completado y el recolector de elementos no utilizados reclama el propio limpiador.

El comportamiento de los limpiadores durante System#exit(int) System.exit es específico de la implementación. No se garantiza si se invocan o no acciones de limpieza.

A menos que se indique lo contrario, pasar un null argumento a un constructor o método de esta clase hará que se produzca una java.lang.NullPointerException NullPointerException excepción .

Agregado en 9.

Java documentación para java.lang.ref.Cleaner.

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.

Propiedades

Nombre Description
Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
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

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(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.

(Heredado de Object)
ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

(Heredado de Object)

Métodos

Nombre Description
Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
Create()

Devuelve un nuevo Cleaner.

Create(IThreadFactory)

Devuelve un nuevo Cleaner mediante un Thread objeto de .ThreadFactory

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()

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
Equals(Object)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetHashCode()

Devuelve un valor de código hash para el objeto .

(Heredado de Object)
JavaFinalize()
Obsoletos.

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)
Register(Object, IRunnable)

Registra un objeto y una acción de limpieza para ejecutarse cuando el objeto se convierte en fantasma accesible.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(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()

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

(Heredado de JavaObject)

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Cleaner administra un conjunto de referencias de objeto y las acciones de limpieza correspondientes.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a