• 8936阅读
  • 7回复

【提问】关于qt中通信机制的问题。。。 [复制链接]

上一主题 下一主题
离线boyb
 
只看楼主 倒序阅读 楼主  发表于: 2005-09-25
Qt里的signal--slot机制 和 channel都能够提供不同实体通信的功能,它们有什么区别?
分别适用于什么场合呢?
[ 此贴被XChinux在2005-09-25 22:42重新编辑 ]
离线myer

只看该作者 1楼 发表于: 2005-09-27
Qt里的channel是什么?
楼主用过吗?
http://user.qzone.qq.com/56430808
离线boyb
只看该作者 2楼 发表于: 2005-09-28
myer,老大,你是斑竹诶,这个没听过吗?也是一种通信机制,
但不清楚和singnal--slot机制有什么本质区别。。
离线XChinux

只看该作者 3楼 发表于: 2005-09-28
The QCopChannel class provides communication capabilities between several clients.
The Qt Cop (QCOP) is a COmmunication Protocol, allowing clients to communicate both within the same address space and between different processes.
Currently, this facility is only available on Qt/Embedded. On X11 and Windows we are exploring the use of existing standards such as DCOP and COM.
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线XChinux

只看该作者 4楼 发表于: 2005-09-28
依上面在Qt Reference里的资料显示,它目前应用在QTE中,而在X11和Windows下面,其表现形式分别为DCOP和COM
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线forgotten
只看该作者 5楼 发表于: 2005-10-12
copchannel 是进程间的通讯,kde的里面的重要的一个部分。提供了一个lightweight的interprocess communication的方法。主要是存在一个copserver来分发和管理所有的channel消息。

而signal和slot则完全不是什么通讯方式。如果你看了qt的源码,那么你就会很明白,singal和slot就是qt提供的一种多对多的函数callback方式。实现的还是挺巧妙的。
Life is forgotten
离线rogi1126

只看该作者 6楼 发表于: 2005-10-12
那是不是说SINGLE & SLOT不能在线程通讯?
离线forgotten
只看该作者 7楼 发表于: 2005-10-13
signal/slot是一种函数callback的方式。

如果是线程之间的通讯,可以使用QThread, QApplication的postEvent, sendEvent。event的方向是从你post的工作线程,到你的主线程(调用了QApplication::exec()的线程)
Life is forgotten
快速回复
限100 字节
 
上一个 下一个