Вариант использования для std:: обещание::set_{значение | исключение}_at_thread_exit

Когда я должен использовать std::promise::set_value_at_thread_exit / std::promise::set_exception_at_thread_exit над std::promise::set_value / std::promise::set_exception?

Единственное отличие состоит в том, что первые гарантируют, что связанное будущее будет готово только один раз. thread_local s вызывающего потока были уничтожены. Однако я не могу придумать ни одного несинтетического примера, где это было бы полезно.

1 ответ

Одна вещь может состоять в том, чтобы знать, закончил ли отсоединенный поток, когда ваша программа все еще находится в состоянии, в котором она хочет знать.

Другие вопросы по тегам