changing to regular Mutex since not using RLock of RWMutex