|
HyperDbg Debugger
|
Headers of spinlock routines. More...
Go to the source code of this file.
Macros | |
| #define | ScopedSpinlock(LockObject, CodeToRun) |
Functions | |
| BOOLEAN | SpinlockTryLock (volatile LONG *Lock) |
| Tries to get the lock otherwise returns. | |
| BOOLEAN | SpinlockCheckLock (volatile LONG *Lock) |
| Check the lock without changing the state. | |
| VOID | SpinlockLock (volatile LONG *Lock) |
| Tries to get the lock and won't return until successfully get the lock. | |
| VOID | SpinlockLockWithCustomWait (volatile LONG *Lock, UINT32 MaxWait) |
| Tries to get the lock and won't return until successfully get the lock. | |
| VOID | SpinlockUnlock (volatile LONG *Lock) |
| Release the lock. | |
| VOID | SpinlockInterlockedCompareExchange (LONG volatile *Destination, LONG Exchange, LONG Comperand) |
| Interlocked spinlock that tries to change the value and makes sure that it changed the target value. | |
Headers of spinlock routines.
| #define ScopedSpinlock | ( | LockObject, | |
| CodeToRun ) |
Check the lock without changing the state.
| Lock | Lock variable |
| VOID SpinlockInterlockedCompareExchange | ( | LONG volatile * | Destination, |
| LONG | Exchange, | ||
| LONG | Comperand ) |
Interlocked spinlock that tries to change the value and makes sure that it changed the target value.
| Destination | A pointer to the destination value |
| Exchange | The exchange value |
| Comperand | The value to compare to Destination |
| VOID SpinlockLock | ( | volatile LONG * | Lock | ) |
Tries to get the lock and won't return until successfully get the lock.
| Lock | Lock variable |
Tries to get the lock and won't return until successfully get the lock.
| Lock | Lock variable |
| MaximumWait | Maximum wait (pause) count |
Tries to get the lock otherwise returns.
| Lock | Lock variable |
| VOID SpinlockUnlock | ( | volatile LONG * | Lock | ) |
Release the lock.
| Lock | Lock variable |