unlockShared
Function parameters
Parameters
- rwl:*DefaultRwLock
Single-threaded applications use this for deadlock checks in
Types
- SingleThreadedRwLock
- Single-threaded applications use this for deadlock checks in
Attempts to obtain exclusive lock ownership.
Functions
- tryLock
- Attempts to obtain exclusive lock ownership.
- lock
- Blocks until exclusive lock ownership is acquired.
- unlock
- Releases a held exclusive lock.
- tryLockShared
- Attempts to obtain shared lock ownership.
- lockShared
- Obtains shared lock ownership.
- unlockShared
- Releases a held shared lock.
Source
Implementation
pub fn unlockShared(rwl: *DefaultRwLock) void {
const state = @atomicRmw(usize, &rwl.state, .Sub, READER, .seq_cst);
if ((state & READER_MASK == READER) and (state & IS_WRITING != 0))
rwl.semaphore.post();
}