A mutex protecting a value of type T. Use .with() for the common load-mutate-store pattern, or .lock() / .get() / .set() / .unlock() for explicit control.
Re-entering the lock from the same coro / thread that already holds it is undefined behaviour — pthread mutexes are not recursive.