#include <ksync.h>
Public Member Functions | |
KSpinLock () | |
~KSpinLock () | |
bool | Valid () |
void | Lock () |
void | Unlock () |
Private Attributes | |
PKSPIN_LOCK | m_pSpinLock |
KIRQL | m_OwnerIrql |
bool | m_bHeld |
This class represents a spin lock. See KeInitializeSpinLock() for details. A spin lock is, in fact, a very fast mutex-like synchronization object that has several restrictions: 1. When a spin lock is held, DO NOT call any routines that may cause your thread to start waiting. 2. Avoid performing complex operations that require much time when a spin lock is held.
BazisLib::DDK::KSpinLock::KSpinLock | ( | ) | [inline] |
BazisLib::DDK::KSpinLock::~KSpinLock | ( | ) | [inline] |
void BazisLib::DDK::KSpinLock::Lock | ( | ) | [inline] |
void BazisLib::DDK::KSpinLock::Unlock | ( | ) | [inline] |
bool BazisLib::DDK::KSpinLock::Valid | ( | ) | [inline] |
bool BazisLib::DDK::KSpinLock::m_bHeld [private] |
KIRQL BazisLib::DDK::KSpinLock::m_OwnerIrql [private] |
PKSPIN_LOCK BazisLib::DDK::KSpinLock::m_pSpinLock [private] |