Difference between revisions of "KMutex"

From 3dbrew
Jump to navigation Jump to search
Line 40: Line 40:
 
| 0x1C
 
| 0x1C
 
| u32
 
| u32
| Unknown maybe number of KThread that wait for this or use this?
+
| 1 if locked, 0 if unlocked
 
|-
 
|-
 
| 0x20
 
| 0x20
 
| KThread *
 
| KThread *
| Unknown 1 locked? 0 unlocked? (but it is compared against a KThread* ?)
+
| Thread that has the KMutex locked - initialized to 0 if initialLocked is false when calling CreateMutex
 
|-
 
|-
 
| 0x24
 
| 0x24

Revision as of 10:17, 18 April 2015

class KMutex extends KSynchronizationObject;

Size : 0x2C bytes

Offset Type Description
0x0 u32 Pointer to vtable
0x4 u32 Reference count
0x8 u32 Count of KThreads that sync with this object - number of nodes in the linked list below
0xC KLinkedListNode* Pointer to first KLinkedListNode in node list of KThreads that sync with this object
0x10 KLinkedListNode* Pointer to last KLinkedListNode in node list of KThreads that sync with this object
0x14 ? ?
0x18 ? ?
0x1C u32 1 if locked, 0 if unlocked
0x20 KThread * Thread that has the KMutex locked - initialized to 0 if initialLocked is false when calling CreateMutex
0x24 u32 Unknown 0x3F ?maybe priority?
0x28 KProcess* Owner