SafeHandle.IsInvalid Propiedad

Definición

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

public:
 abstract property bool IsInvalid { bool get(); };
public abstract bool IsInvalid { get; }
member this.IsInvalid : bool
Public MustOverride ReadOnly Property IsInvalid As Boolean

Valor de propiedad

Boolean

true si el valor del identificador no es válido; en caso contrario, false.

Ejemplos

En el ejemplo siguiente se comprueba si un archivo se abrió correctamente. Este ejemplo de código forma parte de un ejemplo más grande proporcionado para la SafeHandle clase .

// Determine if file is opened successfully.
if (_handle.IsInvalid)
    throw new Win32Exception(Marshal.GetLastWin32Error(), fileName);

Comentarios

Las clases derivadas deben implementar la IsInvalid propiedad para que Common Language Runtime pueda determinar si se requiere la finalización crítica. Las clases derivadas deben proporcionar una implementación que se adapte al tipo general de identificador que admiten (0 o -1 no es válido). A continuación, estas clases se pueden derivar aún más para tipos de identificadores seguros específicos.

A diferencia de la IsClosed propiedad , que informa de si el SafeHandle objeto ha terminado de usar el identificador subyacente, la IsInvalid propiedad calcula si el valor del identificador especificado siempre se considera no válido. Por lo tanto, la IsInvalid propiedad siempre devuelve el mismo valor para cualquier valor de identificador.

Se aplica a