[−][src]Crate pflock
This library provides a phase-fair reader-writer lock, as described in the paper "Reader-Writer Synchronization for Shared-Memory Multiprocessor Real-Time Systems" by Brandenburg et. al.
Example
use pflock::PFLock; let lock = PFLock::new(5); // many reader locks can be held at once { let r1 = lock.read(); let r2 = lock.read(); assert_eq!(*r1, 5); assert_eq!(*r2, 5); } // read locks are dropped at this point // only one write lock may be held, however { let mut w = lock.write(); *w += 1; assert_eq!(*w, 6); } // write lock is dropped here
Structs
RawPFLock |
Type Definitions
PFLock | A phase-fair reader-writer lock. |
PFLockGuard |