Lately, there are many discussions in the programming community in general and in c++ community in particular on how to write efficient asynchronous code. Many concepts like futures, continuations, coroutines are being discussed by c++ standard
committee but not much progress was made besides very minimal support of C++11 futures.
On the other hand, many mainstream programming languages progressed quicker and adopted asynchronous models
either into a core language or popularized it via standard libraries. For example, coroutines are used in Python (yield) and Lua.
Continuations and futures are used extensively in Java. Golang and Erlang are using green threads.
asynchronous programming in C++, the community introduced ad-hoc frameworks and libraries that allow writing asynchronous code in C++.
I would like to share my opinion on what I think will be the best direction for asynchronous models in C++ by reviewing two
prominent frameworks: Seastar and Boost.Fiber. This (opinionated) post reviews Seastar.