Поделиться через


CriticalHandleZeroOrMinusOneIsInvalid Класс

Определение

Предоставляет базовый класс для реализаций критического дескриптора Win32, в котором значение 0 или -1 обозначает недопустимый дескриптор.

public ref class CriticalHandleZeroOrMinusOneIsInvalid abstract : System::Runtime::InteropServices::CriticalHandle
public abstract class CriticalHandleZeroOrMinusOneIsInvalid : System.Runtime.InteropServices.CriticalHandle
[System.Security.SecurityCritical]
public abstract class CriticalHandleZeroOrMinusOneIsInvalid : System.Runtime.InteropServices.CriticalHandle
type CriticalHandleZeroOrMinusOneIsInvalid = class
    inherit CriticalHandle
[<System.Security.SecurityCritical>]
type CriticalHandleZeroOrMinusOneIsInvalid = class
    inherit CriticalHandle
Public MustInherit Class CriticalHandleZeroOrMinusOneIsInvalid
Inherits CriticalHandle
Наследование
CriticalHandleZeroOrMinusOneIsInvalid
Атрибуты

Комментарии

Этот класс является производным от класса System.Runtime.InteropServices.CriticalHandle. Он описывает формат недопустимого дескриптора. Например, некоторые дескрипторы используют -1 в качестве недопустимого значения дескриптора, а другие — 0. Дополнительные производные от этого класса (например, дескрипторы файлов или реестров) могут дополнительно специализироваться на этом.

Используйте класс , CriticalHandleZeroOrMinusOneIsInvalid если необходимо упаковать неуправляемый ресурс, который не имеет существующей управляемой оболочки.

Этот тип реализует интерфейс IDisposable. По окончании использования выдаленную ему память следует прямо или косвенно освободить. Чтобы сделать это прямо, вызовите его метод Dispose в блоке try/catch. Чтобы сделать это косвенно, используйте языковые конструкции, такие как using (в C#) или Using (в Visual Basic). Дополнительные сведения см. в разделе "Использование объекта, реализующего IDisposable" в статье об интерфейсе IDisposable.

Примечание

Важные сведения о безопасности критически важных дескрипторов CriticalHandle и потокобезопасности см. в этом классе.

Конструкторы

CriticalHandleZeroOrMinusOneIsInvalid()

Инициализирует новый экземпляр класса CriticalHandleZeroOrMinusOneIsInvalid.

Поля

handle

Определяет инкапсулируемый дескриптор.

(Унаследовано от CriticalHandle)

Свойства

IsClosed

Возвращает значение, показывающее, является ли дескриптор закрытым.

(Унаследовано от CriticalHandle)
IsInvalid

Получает значение, указывающее, является ли дескриптор недействительным.

Методы

Close()

Помечает дескриптор для освобождения самого дескриптора и соответствующих ресурсов.

(Унаследовано от CriticalHandle)
Dispose()

Освобождает все ресурсы, занятые модулем CriticalHandle.

(Унаследовано от CriticalHandle)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые классом CriticalHandle, определяя, нужно ли выполнять обычную операцию удаления.

(Унаследовано от CriticalHandle)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ReleaseHandle()

При переопределении в производном классе выполняет код, необходимый для освобождения дескриптора.

(Унаследовано от CriticalHandle)
SetHandle(IntPtr)

Определяет дескриптор для заданного ранее существующего дескриптора.

(Унаследовано от CriticalHandle)
SetHandleAsInvalid()

Помечает дескриптор как недопустимый.

(Унаследовано от CriticalHandle)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел