CriticalHandle.IsInvalid プロパティ


派生クラスでオーバーライドされると、ハンドル値が無効かどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether the handle value is invalid.

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


ハンドルが有効な場合は true。それ以外の場合は falsetrue if the handle is valid; otherwise, false.


派生クラスはプロパティをIsInvalid実装する必要があります。これにより、共通言語ランタイムは、重要な終了処理が必要かどうかを判断できるようになります。Derived classes must implement the IsInvalid property so that the common language runtime can determine whether critical finalization is required. 派生クラスは、サポートするハンドルの一般的な種類に適した実装を提供する必要があります (0 または-1 は無効です)。Derived classes must provide an implementation that suits the general type of handle they support (0 or -1 is invalid). これらのクラスは、特定のセーフハンドル型に対してさらに派生させることができます。These classes can then be further derived for specific safe handle types.

オブジェクトが基になるハンドルの使用を終了したIsInvalid IsClosedかどうかを報告するプロパティとは異なり、プロパティは、指定されたハンドル値が常に無効と見なされるかどうかを計算CriticalHandleします。Unlike the IsClosed property, which reports whether the CriticalHandle object has finished using the underlying handle, the IsInvalid property calculates whether the given handle value is always considered invalid. したがって、 IsInvalidプロパティは常に1つのハンドル値に対して同じ値を返します。Therefore, the IsInvalid property always returns the same value for any one handle value.