use std::unique_lock instead of boost::unique_lock