MyLockableDataObj Node1 MyLockableDataObj + m_locked + MyLockableDataObj() + lock() Node2 ILockable + ~ILockable() + lock() Node2->Node1