有的时候当service的method被调用时,可能会改变属性的变化,此时可以主动的发出一个属性变化的signal:
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/asio/object_server.hpp>
#include <sdbusplus/bus.hpp>
#include <iostream>
#include <string>
#include <map>
using namespace std;
shared_ptr <sdbusplus::asio::connection> bus;
using propertyChangesType = map<string, variant<string, int>>;
int addInt(int d1, int d2)
{
sdbusplus::message_t m = bus->new_signal("/calculate_obj","org.freedesktop.DBus.Properties", "PropertiesChanged");
string inf = "calculate_infterface.data";
propertyChangesType d = {
{"data", d1+d2}};
m.append(inf, d);
m.signal_send();
return d1 + d2;
}
string addString(string s1, string s2)
{
return s1 + s2;
}
int main()
{
boost::asio::io_co