Use a Mutex instead of Guard