Use RWMutex to ensure unique write access while allowing multiple read