SafeHandle.IsInvalid Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Quando sobrescrito numa classe derivada, recebe um valor que indica se o valor do handle é invá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 Propriedade
true se o valor do handle for inválido; caso contrário, false.
Exemplos
O exemplo seguinte verifica se um ficheiro foi aberto com sucesso. 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);
Observações
As classes derivadas devem implementar a IsInvalid propriedade para que o runtime da linguagem comum possa determinar se é necessária uma finalização crítica. As classes derivadas devem fornecer uma implementação que se adeque ao tipo geral de handle que suportam (0 ou -1 é inválido). Estas classes podem então ser derivadas para tipos específicos de pegas seguras.
Ao contrário da IsClosed propriedade, que indica se o SafeHandle objeto terminou de usar o handle subjacente, a IsInvalid propriedade calcula se o valor dado do handle é sempre considerado inválido. Portanto, a IsInvalid propriedade devolve sempre o mesmo valor para qualquer valor de alça.