版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010168781/article/details/82688113
问题描述
跨线程使用Qt信号和槽,信号发送时间间隔大于槽函数处理时间时,造成程序崩溃。
原因分析
跨线程使用Qt信号和槽时,connect默认是QueuedConnection,队列连接方式。
信号传递给槽函数的参数,分配内存后放入队列,如果槽函数处理不过来,就会造成队列不停增长,消耗的内存不停增加,最后程序崩溃。
处理方法
处理方法各种各样,原则是保证信号发送间隔不大于槽函数处理时间