CriticalHandle Clase

Definición

Representa una clase contenedora para controlar los recursos.

public ref class CriticalHandle abstract : IDisposable
public ref class CriticalHandle abstract : System::Runtime::ConstrainedExecution::CriticalFinalizerObject, IDisposable
[System.Security.SecurityCritical]
public abstract class CriticalHandle : IDisposable
public abstract class CriticalHandle : System.Runtime.ConstrainedExecution.CriticalFinalizerObject, IDisposable
[System.Security.SecurityCritical]
public abstract class CriticalHandle : System.Runtime.ConstrainedExecution.CriticalFinalizerObject, IDisposable
[<System.Security.SecurityCritical>]
type CriticalHandle = class
    interface IDisposable
type CriticalHandle = class
    inherit CriticalFinalizerObject
    interface IDisposable
[<System.Security.SecurityCritical>]
type CriticalHandle = class
    inherit CriticalFinalizerObject
    interface IDisposable
Public MustInherit Class CriticalHandle
Implements IDisposable
Public MustInherit Class CriticalHandle
Inherits CriticalFinalizerObject
Implements IDisposable
Herencia
CriticalHandle
Herencia
Derivado
Atributos
Implementaciones

Comentarios

La CriticalHandle clase es similar a la SafeHandle clase , excepto que SafeHandle implementa el recuento de referencias. Puede usar CriticalHandle en lugar de para abordar las consideraciones de SafeHandle rendimiento cuando pueda proporcionar la sincronización necesaria de forma más eficaz.

Dado que la CriticalHandle clase no realiza el recuento de referencias, no proporciona protección contra ataques de seguridad de reciclaje. Dado que el algoritmo de recuento de referencias serializa implícitamente las operaciones, también se pierde una cierta cantidad de seguridad de subprocesos. Si llama al método o Close mientras una operación que usa el identificador está pendiente en otro subproceso, o si llama IDisposable.Dispose a IDisposable.Dispose o Close desde dos subprocesos al mismo tiempo, los resultados son no deterministas. La CriticalHandle clase todavía proporciona la finalización crítica garantizada proporcionada por la CriticalFinalizerObject clase .

Constructores

Nombre Description
CriticalHandle(IntPtr)

Inicializa una nueva instancia de la CriticalHandle clase con el valor de identificador no válido especificado.

Campos

Nombre Description
handle

Especifica el identificador que se va a encapsular.

Propiedades

Nombre Description
IsClosed

Obtiene un valor que indica si el identificador está cerrado.

IsInvalid

Cuando se invalida en una clase derivada, obtiene un valor que indica si el valor de identificador no es válido.

Métodos

Nombre Description
Close()

Marca el identificador para liberar y liberar recursos.

Dispose()

Libera todos los recursos usados por .CriticalHandle

Dispose(Boolean)

Libera los recursos no administrados utilizados por la CriticalHandle clase que especifica si se debe realizar una operación de eliminación normal.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
Finalize()

Libera todos los recursos asociados al identificador.

GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ReleaseHandle()

Cuando se invalida en una clase derivada, ejecuta el código necesario para liberar el identificador.

SetHandle(IntPtr)

Establece el identificador en el identificador preexistente especificado.

SetHandleAsInvalid()

Marca un identificador como no válido.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también