关于Qt::BlockingQueuedConnection非死锁的程序卡住

这篇具有很好参考价值的文章主要介绍了关于Qt::BlockingQueuedConnection非死锁的程序卡住。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Qt::BlockingQueuedConnection如果sender和receiver运行于同一线程,会报错

Qt: Dead lock detected while activating a BlockingQueuedConnection: Sender is XXXX(0x1c2dd42ee50), receiver is YYYY(0x1b8baff600)

但发信号的线程和槽执行的线程是两个不同线程,虽然程序没有报错,但卡住不动,也不转圈。上下文如下:
UI线程,创建了对象Logic、对象Worker,均没有使用moveToThread;
Worker中定义处理函数Loop,通过QtConcurrent::runQFutureWatcher::setFuture将Loop扔到线程池运行;
Loop中调用了Logic的具体业务函数,Logic通过信号通知UI线程刷新状态;
为了确保UI线程已经响应完Logic的请求,将Logic的信号绑定为Qt::BlockingQueuedConnection类型,运行至emit signal处卡住文章来源地址https://www.toymoban.com/news/detail-569131.html

到了这里,关于关于Qt::BlockingQueuedConnection非死锁的程序卡住的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于Qt程序打包后运行库依赖的常见问题分析及解决方法

    目录 一. 大致如下常见问题: (1)找不到程序所依赖的Qt库 version `Qt_5\\\' not found (required by (2)Could not Load the Qt platform plugin \\\"xcb\\\" in \\\"\\\" even though it was found (3)打包到在不同的linux系统下,或者打包到高版本的相同系统下,运行程序时,直接提示段错误即segmentation fault,或者I

    2023年04月17日
    浏览(58)
  • 关于一个QT程序的简单破解思路(不需要分析信号和槽的方法,通用所有程序的破解思路)

    几年前,公司买了台国产贴片机,里面的主程序是QT编写,运行在WINDOW XP系统上。主程序打开的界面,如图: 我来简单介绍下程序界面,各位读者不需要搞明白功能,只要知道大体的流程即可。 一、左边的列表: 贴片生产文件,里面包括了贴片时元器件的坐标、飞达安装的元器件类型、

    2024年01月24日
    浏览(42)
  • QT基础 关于QT延迟

    目录 QT提供延时 1.自定义延时 2.使用QElapsedTimer 3.使用事件循环 4.跨平台延时 这里提供四种方法: 1、多线程程序使用QThread::sleep()或者QThread::msleep()或QThread::usleep()或QThread::wait()进行延时处理。 Sleep不会释放对象锁,其他线程无法访问对象,因此会阻塞线程;而Wait会释放对象锁

    2024年02月11日
    浏览(38)
  • Qt做关于界面

    在上位机系统中,经常需要显示当前软件版本,当前fpga版本,那么咱就做一个help的菜单的关于界面 解决显示版本信息的UI Axure界面图: 实现文件的存储:QSetting来存储版本信息文件,详细看代码 UI的实现图: .h文件 .cpp文件 其中有两点:fpga推给上位机的数据是一个int类型的

    2024年04月25日
    浏览(23)
  • qt qtcreator qt+vs 编译器 关于QT、QT creator和编译器,新手入门必知的一些知识关于QT、QT creator和编译器,新手入门必知的一些知识_qt和qtcreator的区别_炫彩灵感的博客-CSDN博客

    对于一个新手而言,基本体会如下: Qt Creator Qt Creator优势 可以实现Ui和代码无缝切换。(VS不行) 对于汉字的支持更好 提示功能做的更好。 比如:#include等,敲出#inc即有提示。 qmake非常好用 项目管理更方便,可以添加pri之类的来管理子模块 Qt Creator劣势(IDE本身巨大劣势)

    2024年02月11日
    浏览(64)
  • 关于Qt Creator 的项目创建

            经过了一个多小时的捣鼓,终于解决了名种报错并创建了第一个项目。         其实创建出来不难,但创建完后要先按一下左下角的小锤子编译一下等右下角的条走完变绿。但是,这之间出现了 can not find file can not find…… .pro can not find makefile 等报错。解决方案较为

    2024年01月19日
    浏览(41)
  • 关于Qt编译android时候一个问题

    搞了三四天,搞的快崩溃了,问题提示为 修改问题 找到这个文件 注释下面的四行数据

    2024年02月16日
    浏览(42)
  • 关于图形界面Pyqt与QT的区别选择

            关于图像界面(GUI)想必大家都并不陌生,想要将一段已经完善的功能列表进行可视化操作并且具有一定的操作空间,将功能可视化必不可少,一个好的可视化工具不仅可以集成一系列小的文件功能,还能将不同方法之间的调用联系起来,形成良好的系统整理功能。

    2023年04月13日
    浏览(82)
  • 关于一些C++、Qt、Python方面的术语

    杂鱼之前纯粹用python没细致理解过的术语整理一下,常看常新( 定义是指给一个实体分配内存空间,以便在程序中使用。在C++和Python中,这个实体可以是变量、函数或类。在C++中,定义通常是在声明之后实现实体的内容。 例如 f(int a, int b) 声明是指在程序中声明实体的存在,

    2024年02月15日
    浏览(41)
  • 关于QT报std::logic_error 错误

    最近在使用QT Creator写项目时,突然报了一个\\\'std::logic_error\\\',详细如下 而这个错误,只有在Release模式下才报,Debug模式下不会报。真是郁闷死了,没办法,只能单步调试,但是怎么也搞不出来,一开始以为某个string变量初始有问题。逐步注释后每个都没有问题。 然后在无意间

    2024年02月15日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包