Фьючерсы/обещания С++, такие как javascript?C++

Программы на C++. Форум разработчиков
Anonymous
Фьючерсы/обещания С++, такие как javascript?

Сообщение Anonymous »

Я писал немного JavaScript, и одна из немногих вещей, которые мне нравятся в этой среде, — это то, как она использует промисы/фьючерсы для создания обработчиков асинхронных событий.

В C++ вам нужно вызывать .get для будущего, и он блокируется до тех пор, пока не будет доступен результат будущего, но в Javascript вы можете написать .then(fn), и он вызовет функцию, когда результат будет готов. Крайне важно, что он делает это в том же потоке, что и вызывающий объект, позже, поэтому нет проблем с синхронизацией потоков, о которых стоит беспокоиться, по крайней мере, не таких, как в C++.

Я думаю, что в C++ что-то вроде -

Код: Выделить всё

auto fut = asyncImageLoader("cat.jpg");
fut.then([](Image img) { std::cout

Вернуться в «C++»