• 7966阅读
  • 1回复

[提问]信号槽的问题: 若在"信号发出"到"信号接收"的时间中,"发送信号者"或者"接收信号者"被销毁了,怎样? [复制链接]

上一主题 下一主题
离线conta
 
只看楼主 倒序阅读 楼主  发表于: 2010-10-30
— 本帖被 XChinux 从 Qt Installation and Deployment 移动到本区(2011-01-07) —


如果信号发出后,在被接收之前,发送者已经被删除,接收者还能接收吗?

又或者,在信号接收前,发送者和接收者都已经被销毁,不存在了,程序会有特殊情况吗?
离线dbzhang800

只看该作者 1楼 发表于: 2010-10-30
Re:信号槽的问题: 若在"信号发出"到"信号接收"的时间中,"发送信号者"或 ..
建议多看看Qt自带的Manual。

首先,connect的连接方式有两种。一种是直连,不可能有你说的这种情况。

另一种是队列,会出现发送者和接受者销毁的情况。但这儿涉及到的是Qt的事件系统。
1. 事件发出后,和发送者就无关了。
2 接受者如果被销毁,和它有关的事件都会先被销毁
快速回复
限100 字节
 
上一个 下一个