Return Type | Function name | Arguments |
---|---|---|
void | hzLockRW::Unlock | (void) |
Declared in file: hzLock.h
Defined in file : hzLock.cpp
Function Logic:
Function body:
void hzLockRW::Unlock (void) { _hzfunc("hzLockRWD::Unlock") ; uint32_t tid ; if (_hzGlobal_MT) { if (m_lockval == 0xffffffff) hzexit(E_CORRUPT, "Attempting to unlock a deprecated lock") ; tid = pthread_self() ; if (m_lockval == tid) { m_lockval = 0; } else { if (m_lockval != 0xffffffff) { if (m_counter == 0) hzexit(E_CORRUPT, "Lock count already zero") ; while (__sync_add_and_fetch(&m_counter, -1)); } } } }