std::promise: один поток записывает, а другой забирает через связанный std::future.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpThPm 552 of 696 menu
◀ ▶

Обещание результата std::promise в C++

Результат для другого потока хранит std::promise: один поток записывает, а другой забирает через связанный std::future.

Рабочий поток вызовет set_value, главный дождется числа:

#include <future> #include <iostream> #include <thread> int main() { std::promise<int> sender; std::future<int> receiver = sender.get_future(); std::thread worker([&]() { sender.set_value(8); }); std::cout << receiver.get() << "\n"; worker.join(); return 0; }

Свяжите std::promise<int> и std::future; поток делает set_value(4). Выведите get в main.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить