Reference
boost::redis::connection::async_receive
Receives server side pushes asynchronously.
Synopsis
Declared in <boost/redis/connection.hpp>
template<class CompletionToken = asio::deferred_t>
auto
async_receive(CompletionToken&& token = {});
Description
When pushes arrive and there is no async_receive operation in progress, pushed data, requests, and responses will be paused until async_receive is called again. Apps will usually want to call async_receive in a loop.
To cancel an ongoing receive operation apps should call basic_connection::cancel(operation::receive).
For an example see cpp20_subscriber.cpp. The completion token must have the following signature
void f(system::error_code, std::size_t);
Where the second parameter is the size of the push received in bytes.