add mutex lock guard