A generalization of std::condition_variable, std::condition_variable_any works with any type of BasicLockable structure.
std::condition_variable
std::condition_variable_any
std::cv_status as a return status for a condition variable has two possible return codes:
std::cv_status