zoukankan      html  css  js  c++  java
  • Qt5Gui!QRasterPaintEngine::penChanged QT程序崩溃

    自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取:

    https://www.cnblogs.com/bclshuai/p/11380657.html

    1.问题描述

    用QT 编写股票分析程序,总是偶然出现崩溃,崩溃之后对dump分析错误位置在 Qt5Gui!QRasterPaintEngine::penChanged

    WARNING: Stack unwind information not available. Following frames may be wrong.
    01a4c620 644ee689 01a4c890 07f28d08 01a4c890 Qt5Gui!QRasterPaintEngine::penChanged+0xc
    01a4c63c 0f539e98 00000005 00000005 0000032e Qt5Widgets!QWidget::event+0x509
    01a4c66c 0f533fb6 645b5490 01a4c890 0a5ccfb8 Qt5Gui!QRasterPaintEngine::toNormalizedFillRect+0x1b8
    01a4c670 645b5490 01a4c890 0a5ccfb8 03c17508 Qt5Gui!QRasterPaintEngine::fillRect+0xa6
    01a4c698 67049bfa 0a5ccfb8 01a4c890 0a5ccfb8 Qt5Widgets!QLineEdit::event+0x2a0
    01a4c6c8 644d2506 644d251b 01a4c890 0a5ccfb8 Qt5Core!QCoreApplicationPrivate::sendThroughApplicationEventFilters+0x8a
    01a4c6cc 644d251b 01a4c890 0a5ccfb8 67043c60 Qt5Widgets!QApplicationPrivate::notify_helper+0xf6
    01a4c6e4 644d18fd 0a5ccfb8 01a4c890 03c09ce8 Qt5Widgets!QApplicationPrivate::notify_helper+0x10b
    01a4c730 6453ffc4 0f4d6b50 00000002 01a4ca34 Qt5Widgets!QApplication::notify+0x16fd
    01a4c74c 0f534266 01a4c780 17a60c78 01a4ca34 Qt5Widgets!QWindowsStylePrivate::devicePixelRatio+0x224
    01a4ca78 0f57767d fffffffb fffffffb 01a4cad0 Qt5Gui!QRasterPaintEngine::fillRect+0x66
    01a4ca9c 644f3042 0ac6b114 01a4cad0 01a4cadc Qt5Gui!QRegion::operator^=+0x52d
    01a4cb5c 644edf8e 0ac6b114 0a581384 00000002 Qt5Widgets!QWidgetPrivate::paintSiblingsRecursive+0x352
    00000000 00000000 00000000 00000000 00000000 Qt5Widgets!QWidgetPrivate::drawWidget+0x96e

     2.问题分析

    界面QGUI崩溃,没有指向具体的代码行,排除空指针等原因,考虑界面程序只能单线程访问,多线程访问,或者多个定时器定时控制访问界面,会导致界面崩溃。

    3.解决办法

    在有多线程或者定时器的场景中,使用信号槽去连接信号数据signalAddData和界面操作函数AddDataToCaculate,通过信号槽QueuedConnection队列属性去设置信号槽连接,达到队列的目的。

    connect(this, &DaPanMonitor::signalAddData, this, &DaPanMonitor::AddDataToCaculate,Qt::QueuedConnection);

    自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取: https://www.cnblogs.com/bclshuai/p/11380657.html
  • 相关阅读:
    Modernizr使用指南(转)
    使用Func<>和Action简化委托
    实现类似MVC ViewBag类型的对象
    更改服务器的SID 加入域控制器提示SID重复
    SQL SERVER 执行大于80M的SQL 脚本
    完全关闭IIS日志,包括System32下的LogFile
    MVC不用302跳转Action,内部跳转
    SHA1l加密
    获取当前时间戳
    invoke反射
  • 原文地址:https://www.cnblogs.com/bclshuai/p/15463591.html
Copyright © 2011-2022 走看看