Anyway... you could create a `boost::asio::experimental::basic_channel` using the signature `(void)` and then `co_await` the channel to suspend the coroutine. Later when you want to wake it up, send a message to the channel from elsewhere. You will need to be thoughtful about the order of how things are destroyed if you want to tear down the socket (or corresponding I/O object). More here:

https://www.boost.org/doc/libs/1_83_0/doc/html/boost_asio/reference/experimental__basic_channel.html


This is actually Chris' recommended solution. It's so new I forgot about it. :)


 
Thanks


_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users