Недавно я обнаружил и влюбился в шаблон Deferred/Promise, используемый в jQuery. Он просто инкапсулирует так много асинхронных вариантов использования, включая замечательную цепочку и возможность фильтрации, что я не могу поверить, что так долго пропустил это.
Я только что закончил рефакторинг своего кода AS3, чтобы использовать превосходную библиотеку CodeCatalyst/promise -as3(https://github.com/CodeCatalyst/promise-as3), и поэтому я начал думать о том, чтобы вернуться к моему коду C++ и посмотреть, как я могу реализовать шаблон там.
Прежде чем я начал кодировать это сам, я проверил, было ли это сделано раньше, и обнаружил std::future
/std::promise
(и эквиваленты boost ), но они очень тяжелые (, они, кажется, используют настоящие потоки и т. д. и имеют тяжелый синтаксис шаблона ).
Итак, мой вопрос: :Существует ли облегченная, чистая C++ реализация шаблона Deferred/Promise в стиле jQuery -?
ссылки: