通过async_send也可以完成协程调用:
//async_send.cpp
#include <iostream>
#include <boost/asio.hpp>
#include <sdbusplus/bus.hpp>
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
using namespace std;
using namespace sdbusplus;
void asyncCallSendYield(shared_ptr<sdbusplus::asio::connection> conn, boost::asio::yield_context yield)
{
cout<<"1 async_send yield begin"<<endl;
boost::system::error_code ec1;
auto mesg1 = conn->new_method_call("calculate.service", "/calculate_obj", "calculate_infterface.data", "AddInt");
mesg1.append(1, 2);
sdbusplus::message::message ret1 = conn->async_send(mesg1, yield[ec1]);
int data1 = 0;
ret1.read(data1);
cout<<"ret data="<<data1<<endl;
cout<<"2 async_send yield end"