I find the article useful from a "how do C++20 coroutines work" perspective, but these sorts of tutorials don't really help you use coroutines in anything beyond a toy program.
I personally found coroutines are useful only in conjunction with a library wrapping OS system calls to interact with sockets (epoll/iouring on Linux, for instance), providing an event loop, and handles the complexity of multithreading. The most fleshed out one out there is probably boost asio.
I find the article useful from a "how do C++20 coroutines work" perspective, but these sorts of tutorials don't really help you use coroutines in anything beyond a toy program.
I personally found coroutines are useful only in conjunction with a library wrapping OS system calls to interact with sockets (epoll/iouring on Linux, for instance), providing an event loop, and handles the complexity of multithreading. The most fleshed out one out there is probably boost asio.
Previous discussion: https://news.ycombinator.com/item?id=26221690
Aren’t there some lightweight wrapper libraries now that make this a bit cleaner?
>... I sadly found the explanation of coroutines utterly incomprehensible. Same for almost every other explanation I found on the web.
Nice to see a mirror of my experience.
gcc-10? What is this, 2020?
Nice overview though!
I am not remotely religious, but please pray for us who are still dealing with older versions than that.
gcc (GCC) 3.2 20020927 (prerelease)
It workz! ;)
there's (2021) literally in the title