The current implementation uses mutexes, it might make sense to do the same with RwLocks.
The current implementation uses mutexes, it might make sense to do the same with RwLocks.