🔒 Rust Mutex
= a lock on data access
How?
Normal
Mutex<T>→Mutex::new(T).lock()to acquire the lock- blocks until mutex is obtained
- returns
MutexGuard<T> - released when variable is dropped
Read, write
RwLock.write()waits for exclusive, mut access- → max one writer
.read()waits for non-mut access- → many readers
Conditional
std::sync::Condvar.wait()→ block thread.notify_all()→ releases blocked (via.wait()) thread