• 4557阅读
  • 4回复

[提问]如果一个控件,发送了一个信号,但是,这个信号还没有被响应之前,控件的生命周期完结。 [复制链接]

上一主题 下一主题
离线tthheedhz
 
只看楼主 倒序阅读 楼主  发表于: 2012-05-09
那么,这个信号,还有作用吗?

与这个信号连接的那些槽函数,还会被执行吗?


离线tthheedhz
只看该作者 1楼 发表于: 2012-05-09
举个例子:

程序总共有两个线程,主线程和次线程:

程序初始化时候,在主线程里,建立了一个信号槽:
connect(A,SIGNAL(signal()),B,SLOT(slot()));

接下来,

控件A在次线程中,发送了一个signal()信号,然后控件A立即被自然销毁。


那么,主线程中的B控件,还能收到来自A的信号吗?槽函数slot()会被执行吗?




离线tthheedhz
只看该作者 2楼 发表于: 2012-05-09
意思就是想问:槽函数还没有被响应之前,发送信号的那个主体已经被销毁。

那么,槽还会被执行吗?
离线nightcolor
只看该作者 3楼 发表于: 2012-05-09
按照你上面描述,槽函数应会执行的
离线tthheedhz
只看该作者 4楼 发表于: 2012-05-09
引用第3楼nightcolor于2012-05-09 15:21发表的  :
按照你上面描述,槽函数应会执行的

但是,槽函数在执行前,发送信号的那个控件A,已经被销毁了。槽函数还能被执行?
快速回复
限100 字节
 
上一个 下一个