unique_lock is required for conditional variable, but some function takes unique_lock with no meaning. Because std::lock_guard is much cheaper on runtime, they should use std::lock_guard instead.
The differences of the code: https://godbolt.org/z/wjx3Wy