MulleObject

Base class that provides automatic thread-safe method locking in mulle-objc. Inherits from MulleDynamicObject and adds recursive locking capabilities.

Base Class

MulleDynamicObject

Implemented Protocols

Instance Variables

NSRecursiveLock   *__lock;  // Recursive lock for thread safety

Methods

Object Creation

Lock Operations (NSLocking)

Lock Sharing

Internal Forwarding

Usage Example

// Create thread-safe object
@interface MyObject : MulleObject <MulleAutolockingObjectProtocols>
@end

// Create lockless object
MyObject *obj = [MyObject locklessObject];

// Share lock between objects
MyObject *obj2 = [MyObject new];
[obj2 shareRecursiveLockWithObject:obj];

// Methods are automatically locked
[obj doSomething];  // Thread-safe

Important Notes

  1. Thread Safety
  2. Implementation Details
  3. Subclassing
  4. Cache Management