我已经使用 dbus 开发了一个客户端服务器应用程序。客户端使用 dbus_message 发送 2 个输入参数,服务器返回总和。我主要对使用 DBusWatch 感兴趣,因此我可以从多个客户端发送并让服务器响应它们。任何人都可以帮助我编写代码并向我解释 DbusWatch 的工作原理吗?
代码
客户端
#include <stdio.h>
#include <stdlib.h>
#include <dbus/dbus.h>
#include <stdbool.h>
#include <ctype.h>
void caller(int param,int param1)
{
DBusMessage* msg;
DBusMessageIter args;
DBusConnection* conn;
DBusError err;
DBusPendingCall* pending;
int ret;
int level;
printf("Calling remote method with %d %d\n",param,param1);
// initialiset the errors
dbus_error_init(&err);
// connect to the system bus and check for errors
conn = dbus_bus_get(DBUS_BUS_SESSION, &err);
if (dbus_error_is_set(&err)) {
fprintf(stderr, "Connection Error (%s)\n", err.message);
dbus_error_free(&err);
}
if (NULL == …Run Code Online (Sandbox Code Playgroud)