Mostly-Read Write Locks
TanayLabUtilities.MostlyReadWriteLocks
—
Module
Read-oriented (reentrant) read-write locks.
TanayLabUtilities.MostlyReadWriteLocks.MostlyReadWriteLock
—
Type
mutable struct MostlyReadWriteLock <: AbstractLock ... end
Drop-in replacement for
ConcurrentUtils.ReadWriteLock
which is optimized to be more efficient for many fast readers and rare slow writers. That is, code assumes that read locks are common and are held for a short time (in particular, spinning waiting for readers to release their lock is sensible) while write locks are uncommon and held for a long time (that is, waiting for a writer to release its lock via a proper mutex and a context switch is sensible).