记一次Qt多线程槽函数无法触发异常排查

问题:
信号中带有自定义类型参数时,多线程触发槽函数时异常,主要表现为ConnectionType只有选BlockingQueuedConnection才能触发槽函数。
解决办法:

  1. 触发信号不带参数,或者带一些简单的参数(int,QString)等,之后在槽函数中获取需要的数据
  2. 传参数时要通过qRegisterMetaType语句注册自定义类型(需要注意的点很多,容易出问题)。
qRegisterMetaType<SampleItem>("SampleItem"); //
qRegisterMetaType<BaseControlPanel::ControlType>("ControlType");

相关推荐

  1. Qt线函数无法触发异常排查

    2024-03-25 17:00:07       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-25 17:00:07       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-25 17:00:07       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-25 17:00:07       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-25 17:00:07       20 阅读

热门阅读

  1. 2024蓝桥杯每日一题(树状数组)

    2024-03-25 17:00:07       19 阅读
  2. 渗透测试-ssh私钥泄露知识记录

    2024-03-25 17:00:07       16 阅读
  3. 【C++从0到1-黑马程序员】引用

    2024-03-25 17:00:07       21 阅读
  4. 开源与闭源语言模型的较量:技术分析

    2024-03-25 17:00:07       16 阅读
  5. 大数据安全分析相关与安全分析的场景

    2024-03-25 17:00:07       15 阅读
  6. IOS面试题编程机制 46-50

    2024-03-25 17:00:07       15 阅读
  7. SGD优化器和Adam区别

    2024-03-25 17:00:07       18 阅读
  8. 我的算法刷题笔记(3.18-3.22)

    2024-03-25 17:00:07       21 阅读
  9. 什么是微任务?什么是宏任务?

    2024-03-25 17:00:07       19 阅读
  10. IOS面试题编程机制 31-35

    2024-03-25 17:00:07       17 阅读
  11. JVM G1垃圾回收器的工作内容

    2024-03-25 17:00:07       17 阅读