草庐IT

QT踩坑之子线程不能操作UI,否则应用程序卡死

QT易踩坑之在子线程中操作UI,造成应用程序卡死! QtConcurrent::run([=](){ intres=SDKGetMemberInfo(memberNum.toStdString().c_str()); if(res==0) { MainHandler::GetInstance()->TipMessageBox(QString(tr("Examplesofbriquetteelves"))); } });这里调用SDKGetMemberInfo()接口可能是个耗时操作,因此我们使用QtConcurrent启动一个线程来执行该函数,若返回值为0,则主界面弹出提示语"Example

PyQt5 执行耗时操作导致界面卡死或未响应的解决办法

问题场景:当用PyQt5开发一个GUI界面,需要执行业务逻辑时,后台逻辑执行时间长,界面就容易出现卡死、未响应等问题。问题原因:在PyQt中,GUI界面本身就是一个处理事件循环的主线程,当进行耗时操作时,主线程GUI需要等待操作完成后才会响应,在等待这段时间,整个GUI就处于卡死的状态。在windows下,系统会认为这个程序运行出错了,会自动显示未响应,如果这时有其他的操作,整个程序就会卡死崩溃。解决办法:另开一个线程来执行这个耗时操作(使用QThread)fromPyQt5.QtCoreimportQThread通过继承QThread并重写run()方法的方式实现多线程代码的编写。结构大体如

记一次 Visual Studio 2022 卡死分析

一:背景1.讲故事最近不知道咋了,各种程序有问题都寻上我了,你说.NET程序有问题找我能理解,Windows崩溃找我,我也可以试试看,毕竟对Windows内核也知道一丢丢,那VisualStudio有问题找我就说不过去了,但又不好拒绝,就让朋友发下卡死的dump我看一看。二:WinDbg分析1.到底是哪里的卡死因为VS是窗体程序,所以在卡死的时候看下主线程便知,使用~0s;!clrstack即可。0:000>k#Child-SPRetAddrCallSite000000004b`acaf9b90000001ed`309f0f280x00007ffb`1b77bfe8010000004b`aca

win10右键一直卡死解决记录

网上删除注册表中除news外的所有键值还是无法解决卡死问题,于是找到了这个方法,终于治好了右键卡死问题,特此记录。【方法A】“干净启动”,排除第三方软体的影响:停止非核心的程序运作(包括第三方杀毒、优化软体)情况允许的话,卸载设备中的第三方杀毒、管家、优化软件同时按【Windows徽标键+R】,输入【msconfig】,按回车(Enter)点击【服务】>【隐藏所有Microsoft服务】>【全部禁用】(若您启用了指纹识别功能,请不要关闭相关服务)启动【任务管理器】,点击【启动】选项卡,将所有启动项都禁用重启设备《如何在Windows中执行干净启动》https://support.microso

一个超经典 WinForm 卡死问题的再反思

一:背景1.讲故事这篇文章起源于昨天的一位朋友发给我的dump文件,说它的程序出现了卡死,看了下程序的主线程栈,居然又碰到了OnUserPreferenceChanged导致的挂死问题,真的是经典中的经典,线程栈如下:0:000:x86>!clrstackOSThreadId:0x4eb688(0)ChildSPIPCallSite002fed380000002b[HelperMethodFrame_1OBJ:002fed38]System.Threading.WaitHandle.WaitOneNative(System.Runtime.InteropServices.SafeHandle,

记解决 Postman 卡顿,占 CPU,卡死问题

前言对于后端开发者来说,一个好的接口调试工具是很重要的。这里首推Postman。解决方案对于急于解决问题的可先这样操作,没错,简单暴力之清缓存,删除历史记录。了解解决过程可往下看。起因有一天发现自己的Postman越来越卡,打开越来越慢,各种卡死,占用大量CPU,那真的是令人奔溃的。其实这个卡顿问题很久之前就遇到,但是后来都没去解决,一直忍受着。终于有一天实在是卡的受不了了,才去找了解决方法。过程这天终于下定决心去解决它。第一件就是想到不行我就重装软件好了。毕竟重装能解决99%的问题!实在不行,就多装几次就好了!我果断卸载装了最新的Postman。可结果是肯定没有解决(这里已经删除了安装目录下

没有禁用硬件图形加速的情况下解决visio卡死的问题

没有禁用硬件图形加速的情况下解决visio卡死的问题1.前情提要这两天在使用visio的时候,总是会发生死机问题。出现问题的特点如下:在使用鼠标滚轮进行缩放时,一定会发生卡死打开任务管理器,发现CPU和内存占用率全满电脑的其他界面无法操作,前台应用全部卡死2.解决办法主要的解决办法是关闭visio的硬件图形加速功能,其位置在:visio-文件-选项-高级但是我的visio2021专业版并没有这个选项,经过查找资料,发现解决方法如下3.删除注册表经过查找资料,发现好像是较高版本的visio将这个选项的入口隐藏了,需要修改注册表才能让它出现需要打开注册表,并删除ConfigContextData文

富芮坤fr8008gp lvgl遇坑和解法:卡死在lvgl定时器中;SWD接口配置;

卡死在lvgl定时器中官方提供的lvgl的demo在gui_main函数中如下设置定时器并调用window_manager_init函数初始化各个界面:/*Implementandregisterafunctionwhichcanreadaninputdevice.E.g.foratouchpad*/staticlv_indev_drv_tindev_drv;/*Descriptorofainputdevicedriver*/lv_indev_drv_init(&indev_drv);/*Basicinitialization*/indev_drv.type=LV_INDEV_TYPE_POI

C++程序在Windows系统上启动失败与运行卡死问题排查实战

目录1、VS2017默认编译出来的程序,不支持XP系统1.1、新版本软件为什么要选择VS2017?1.2、VS2017如何配置才能编出支持XP系统的程序?1.3、最终选择使用VS2010编出的版本2、程序在XP系统中启动报错,无法启动2.1、提示在系统库MFPlat.dll中找不到MFGetStrideForBitmapInfoHeader接口2.2、MicrosoftMediaFoundation多媒体库不支持XP系统2.3、为啥会报找不到MFGetStrideForBitmapInfoHeader接口2.4、在两个XP系统中表现现象不太一样2.5、此问题的解决办法3、程序执行某一操作时发生

解决虚拟机VMware一段时间不动,就卡死的问题

虚拟机总是一段时间不移动鼠标,就会无响应,每次都要重启两次才能继续维持一段时间,我一开始以为是内存和处理器或者硬盘太小的问题,但是我调大了之后还是一样,下面是我分配的虚拟机性能 针对虚拟机卡死,列出以下改善性能的方式,大家可以尝试一下:1.基本设置:内存、处理器、硬盘打开“编辑虚拟机设置”提高你的内存、处理器、硬盘大小 2.拓展设置2.1点击“显示器”,启动加速3D图形、将图形内存改成(推荐)大小或者更高因为虚拟机安装的系统一般是windows,那么建议在界面右侧的【3D图形】中进行勾选。另外,一般来说图形内存为768MB是足够的,但如果虚拟机的实际应用占用资源多了,必定会挤占图形内存,一旦出