Compartilhar via


SafeHandle.IsInvalid Propriedade

Definição

Quando substituído em uma classe derivada, obtém um valor que indica se o valor de indicador é 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 da propriedade

true se o valor do identificador for inválido; caso contrário, false.

Exemplos

O exemplo a seguir verifica se um arquivo foi aberto com êxito. Este exemplo de código faz parte de um exemplo maior fornecido para a SafeHandle classe .

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

Comentários

As classes derivadas devem implementar a IsInvalid propriedade para que o Common Language Runtime possa determinar se a finalização crítica é necessária. As classes derivadas devem fornecer uma implementação que se adapte ao tipo geral de identificador ao qual dão suporte (0 ou -1 é inválido). Essas classes podem ser derivadas ainda mais para tipos de identificador seguro específicos.

Ao contrário da IsClosed propriedade , que informa se o SafeHandle objeto terminou de usar o identificador subjacente, a IsInvalid propriedade calcula se o valor do identificador fornecido é sempre considerado inválido. Portanto, a IsInvalid propriedade sempre retorna o mesmo valor para qualquer valor de identificador.

Aplica-se a