最近在开发一自动控制的软件,需要实时刷新曲线图,打包部署发现程序会随机崩溃,最艹的是还让部署的那台工控机上另一自控软件崩溃的频率增加了。

于是定位问题,看windows的应用程序日志发现每次崩溃都指向ntdll.dll(c0000374堆损坏),于是考虑是不是工控机太久没更新的问题,同时网上直接检索ntdll.dll问题的结果也是让用各种方式进行更新或替换。在工控机上找到ntdll.dll,发现果然和开发环境上的ntdll.dll存在版本差异,于是进行替换,后因权限问题作罢。

但是问题得解决,于是考虑不如加个程序自动启动,检测进程,如果里面没有就直接再启动一个。

然后偶然发现,开发环境这软件也崩。。。

最后定位到线程问题了,因为需要实时刷新,同时主界面还需要别的交互,考虑不卡主线程界面,就在子线程(threading.Thread)里进行了数据I/O,数据处理和作图操作。而图表chartView和作图函数都是在主线程里的,结合查到的两条信息:

1、Python程序因为ntdll.dll和QtGui4.dll崩溃

2、子线程不能更新主线程UI

把之前threading.Thread实现的线程作图,改成了基于QThread的信号收发,在主线程里进行最后一步作图,问题得到了解决

DEBUG pyqt + ntdll.dll + 随机异常退出相关推荐

  1. QT C++ C:\Windows\SYSTEM32\ntdll.dll错误异常

    项目用Qt Creator 4.0.3+QT 5.6.3 MINGW windows下编写. 项目中使用多线程操作SqlServer数据库,编写完毕后本地测试验证无异常,发给客户使用. 客户处有多台工 ...

  2. (ntdll.dll)处(位于 .exe 中)引发的异常: 0xC0000139: Entry Point Not Found

    症状 起因是我加了个QAxObject的lib,然后好好的程序就会报错(ntdll.dll)处(位于 .exe 中)引发的异常: 0xC0000139: Entry Point Not Found 网 ...

  3. Opencv4测试报错00007FFB3253A9C0 (ntdll.dll)处引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发生访问冲突

    报错信息如下: 0x00007FFB3253A9C0 (ntdll.dll)处(位于 test1.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发 ...

  4. 0x00007FF8EDA19A9D (ntdll.dll)处引发的异常: 0xC0000005: 写入位置 0x00000000CED889F8 时发生访问冲突

    0x00007FF8EDA19A9D (ntdll.dll)处引发的异常: 0xC0000005: 写入位置 0x00000000CED889F8 时发生访问冲突 这个错误代码: EnterCriti ...

  5. C++opencv窗口不销毁引发引发异常0x00007FFBE76FA9C0 (ntdll.dll)处

    在代码: if (!__scrt_is_managed_app())exit(main_result); 引发异常 0x00007FFBE76FA9C0 (ntdll.dll)处(位于 foxconn ...

  6. 关于程序运行中出现的bug“Project1.exe 已触发了一个断点”和“ntdll.dll处引发的异常”和“指针对象为0xdddddddd”

    最近自己做了一个数组+链表的结构.在写完后频频出现 "Project1.exe 已触发了一个断点"和"ntdll.dll处引发的异常"和"指针对象为0 ...

  7. OpenCV3错误总结(二):0x00007FFE8F21A9C0 (ntdll.dll)处(位于 photo mix.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000000

    1.错误问题: 程序调试时,出现0x00007FFE8F21A9C0 (ntdll.dll)处(位于 photo mix.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000 ...

  8. ntdll.dll学习总结

    ntdll.dll ntdll.dll描述了windows本地NTAPI的接口.是重要的Windows NT内核级文件.当Windows启动时,ntdll.dll就 驻留在内存中特定的写保护区域,使别 ...

  9. visual studio 调试时提示 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。

    问题描述 "Win32Project3.exe"(Win32): 已加载"D:\software\VS2013\VS2013 文档\Win32Project3\Debug ...

最新文章

  1. python opencv检测人脸
  2. 关于程序为什么要代码段,程序段
  3. 两个listmap合并去重_我是如何用单机实现亿级规模题库去重的?
  4. DFS应用——遍历有向图+判断有向图是否有圈
  5. 3.4 内置函数(1)
  6. LeetCode 938. 二叉搜索树的范围和(二叉树遍历+搜索剪枝)
  7. 微信搜一搜又推出了新功能!搜“医保码”直达医保页面
  8. Ubuntu环境下sublime3 nodejs安装与插件配置
  9. Direct IO的程序实现
  10. Linux多进程编程(1)
  11. ffmpeg: error while loading shared libraries: libavdevice.so.53
  12. Python——jieba分词并统计词频
  13. 用计算机制作flash动画教案,最新最完整Flash动画制作教案.doc
  14. PS、PR、AE、AI、AU区别
  15. python调用sin_Python sin() 函数 - Python 教程 - 自强学堂
  16. ViewPager的翻页动画
  17. 罗素说理想与历程—幸福心灵的获取
  18. 好评率超高的9个公众号,值得收藏
  19. Opencv2.4.9源码分析——Stitching(五)
  20. 小熊错误_坚守好股票、寻找穿越牛熊十倍股:小熊电器、贝达药业、开立医疗!...

热门文章

  1. 计算机学术英语演讲,学术英语演讲稿.docx
  2. 服务器主板电池的电压不稳定怎么办,主板因静电造成的故障现象与解决方法
  3. 基于opencv实现对图片中的物体计数
  4. 使用PageInfo把list手动进行分页处理
  5. 解决方案指导------匹配(Matching)(3)
  6. 使用Python爬取itcast网站的视频
  7. 李嘉诚的商业忠告(转)
  8. 1999年考研数学一真题
  9. 1994-1999年考研数学二真题及其详解
  10. 方形图片转换成圆形图片(涉及微信用户头像方形转换成圆形)