- 11
- 0
- 约3.97万字
- 约 29页
- 2018-05-30 发布于广东
- 举报
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》
《Qt4 图形设计与 入式开发》——第9 章、Qt 进程与线程
第9 章 Qt 进程与线程
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》——第9 章、Qt 进程与线程
9.1 Qt 内部进程通信
Qt 作为一种跨平台的基于C++ 的GUI 系统,它能够提供给用户构造图形用户
界面的强大功能。自从1996 年Qt 被原Trolltech 公司发布以来,该系统成为世界上
很多图形用户所使用的主要系统。
更为重要的是,Linux 操作系统的桌面环境系统KDE 也是基于Qt 构造的。目
前,Qt 已经提供了 MS/Windows 、UNIX/X 11 和嵌入式平台的支持,得到了越来
越广泛的应用。
在Qt 系统中,不仅有着构造完善的系统结构,而且为了满足用户对编写图形用户
界面应用的种种需求,它还创建了许多新的系统机制,其中Qt 所特有的内部进程通信
机制尤其值得一提。
下面是分析基于 QT 的应用进程之间通信常用的 3 种机制:QCOP 协议、
Signal-Slot 机制和FIFO 机制。给出了各自的使用方法,并指出了各自的使用场合。
1 QCOP 协议
QCOP 是 Qt 内部的一种通信协议,这种协议用于不同的客户之间在同一地址
空间内部或者不同的进程之间的通信。目前,这种机制还只在 Qt 的 入式版本中
提供。
为实现这种通信机制,Qt 中包含了由 QObj ect 类继承而来的 QCopChannel 类,
该类提供了诸如 send()和isRegistered() 等静态函数,它们可以在脱离对象的情况下
使用。
为了在管道中接收通信数据,用户需要构造一个 QCopChannel 的子类并提供
receive() 函数的重载函数,或者利用connect()函数与接收到的信号相联系。
注意:在 Qt 系统中,只提供了QCOP 协议机制和用于接收消息的类,而如何
发送消息则没有提供 应的类供用户使用。
在基于 Qt 的桌面系统 Qtopia (QPE )中,则提供了 应的发送类:
QCopEnvelope 。用户可以通过该类利用管道向其他进程发送消息。该类将在
QCopChannel 发送QCop 消息的过程进行了封装,用户只需要调用该类中的相关函
数就可以方便地实现进程之间的通信过程。
在这里需要明确的是:一方面,QCop 消息的发送要利用QCopEnvelope 类,另
一方面,接收消息则是通过与一个QCopChannel 关联。
在发送消息时,将利用如下的协议机制。
QCopEnvelope e (channelname, messagename);
于需要携带参数的消息,必须使用“()”运算符将参数添加到envelope 中。
e parameter1 parameter2 ...;
于不带参数的消息,只需要利用:
QCopEnvelope e (channelname, messagename);
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》——第9 章、Qt 进程与线程
在Qtopia 中,所有的channels 名都以“QPE/ ”开始,而messagename 则是一个函数
的标识符。
在接收 消息时 ,通常只需要利用在应用程序 中预先定义好 的
QPE/Application/ {appname}管道,当然,也可以根据需要自己定义管道,并将其与
一个slot()函数 关联。
myChannel = new QCopChannel( QPE/FooBar, this );
connect( myChannel, SIGNAL (received (const QCString ,
您可能关注的文档
- 毕业设计-嵌入式开发-基于单片机控制的电子密 码锁 9页 0.1M.pdf
- 毕业设计-嵌入式开发-全遥控数字音量控制的D类功率放大器 32页 0.2M.pdf
- 毕业设计-嵌入式开发-数控直流稳压电源完整论文 13页 0.1M.pdf
- 毕业设计-嵌入式开发-数字抢答器(数字电路)7页 0.1M.pdf
- 毕业设计-嵌入式开发-数字时钟 12页 0.2M.pdf
- 毕业设计-嵌入式开发-同步电机模型的MATLAB仿真 27页 0.2M.pdf
- 毕业设计-嵌入式开发-用单片机控制直流电机 6页 0.1M.pdf
- 毕业设计-嵌入式开发-自动加料机控制系统 59页 0.4M.pdf
- 毕业设计-智能型充电器的电源和显示的设计 5.0M-附录1外文资料译文.pdf
- 毕业设计-智能型充电器的电源和显示的设计 5.0M-附录2外文资料原文.pdf
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)