Функция ExTryConvertSharedSpinLockExclusive (wdm.h)

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

Синтаксис

LOGICAL ExTryConvertSharedSpinLockExclusive(
  [in, out] PEX_SPIN_LOCK SpinLock
);

Параметры

[in, out] SpinLock

Указатель на блокировку спина, состояние доступа которой должно быть преобразовано в монопольный доступ. Вызывающий объект уже должен владеть этой спиновой блокировкой для общего доступа.

Возвращаемое значение

ExTryConvertSharedSpinLockExclusive возвращает значение TRUE, если преобразование выполнено успешно; В противном случае возвращается значение FALSE.

Комментарии

Если вызывающий объект получил общую блокировку спина, вызвав подпрограмму ExAcquireSpinLockSharedAtDpcLevel , вызывающий объект должен освободить преобразованную спиновую блокировку, вызвав подпрограмму ExReleaseSpinLockExclusiveFromDpcLevel . Если вызывающий объект получил общую спиновую блокировку путем вызова подпрограммы ExAcquireSpinLockShared , вызывающий объект должен освободить преобразованную спиновую блокировку, вызвав подпрограмму ExReleaseSpinLockExclusive , а значение OldIrql , предоставленное в качестве входного параметра для этой подпрограммы, должно быть значением KIRQL, возвращенным ExAcquireSpinLockShared.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть wdm.h
Библиотека Ntoskrnl.lib
IRQL DISPATCH_LEVEL

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

ExAcquireSpinLockShared

ExAcquireSpinLockSharedAtDpcLevel

ExReleaseSpinLockExclusive

ExReleaseSpinLockExclusiveFromDpcLevel