C ++ 0x позволяет блокировать мьютекс до тех пор, пока не будет достигнуто заданное время, и возвращать логическое значение, указывающее, заблокирован ли мьютекс или нет.
template <class Clock, class Duration>
bool try_lock_until(const chrono::time_point<Clock,
Duration>& abs_time);
В некоторых случаях я рассматриваю исключительную ситуацию, когда блокировка не выполняется из-за тайм-аута. В этом случае исключение должно быть более присвоено.
Чтобы сделать разницу, можно использовать функцию lock_until, чтобы получить исключение тайм-аута, когда достигается время до блокировки.
template <class Clock, class Duration>
void lock_until(const chrono::time_point<Clock,
Duration>& abs_time);
Считаете ли вы, что lock_until должен быть более адекватным в некоторых контекстах? если да, то на каких? Если нет, почему try_lock_until всегда будет лучшим выбором?