KRecursiveLock

KRecursiveLock

Size : 0x8 bytes

Used to implement critical sections, etc.

This class has 3 methods : Lock, Unlock, and LocalUnlock. The only difference between the two last methods is that the last one never triggers SGI #8 (rescheduling signal, associated to KScheduler objects)

Lock / Unlock blocks are always used with the same object.

Lock / LocalUnlock are always used with the associated attribute of the timer/watchdog timer interrupt object.

OffsetTypeDescription
0x0KThread *Thread owning the lock
0x4s32Lock count

Category:Kernel objects