现在的位置: 首页 > 综合 > 正文

DBus学习(3)

2012年12月19日 ⁄ 综合 ⁄ 共 654字 ⁄ 字号 评论关闭

*引用本文请注明来自 blog.csdn.net/wtz1985       

在前两篇文章中,已经介绍了什么是DBUS和DBUS的组成和原理.这篇文章将简单的对客户端和服务端,消息等.

1、客户端

在客户端使用DBUS比较简单,首先,从DBUS_BUS_SESSION类型的DBUS后台获得一个连接,再从这个连接创建得到一个对象的代理,以后对对象的所有操作都将通过这个代理来完成。

得到服务代理后,可以在应用程序的各个地方通过对象代理的方法使用函数想对象发出一个方法调用的消息。请求对象的服务,可以发送异步的方法(异步服务),也可以发送同步方法(同步服务),方法是同步还是异步有对象定义。

2、服务端

在服务器进程启动后,调用函数dbus_g_object_type_install_info将对象的安装信息结构告诉DBUS,随后,从DBUS_BUS_SESSION类型的DBUS获得一个连接,再从这个连接得到一个DBUS对象的代理。通过这个DBUS代理调用方法RequestName为这个连接得到一个命名,客户端应用可以使用这个名字将请求消息发送到连接。接着,服务器进程创建一个指定类型的对象(glib对象)。

其中安装信息由XML文件,通过dbus-binding-tool转换成对象的头文件。

3、消息。

消息由消息头和消息体组成。消息头由消息的固有字段信息组成。消息体由一串字符串值组成。消息体的每个字符串值的意义由消息头中的描述指定,消息头的长度必须是8的倍数,相应的,消息体由8的倍数处开始。

 

~~END~~

 

抱歉!评论已关闭.