PyQt 问题记录

1.现成的组件不一定线程安全,(包括且不限于数据的修改竞争,和一些组件的崩溃 )

对于PyQt 的线程使用,可能还需要更谨慎些

保存逻辑

python 复制代码
 @QuestionBox("保存/Save")
    def Save(self):
        okFlag=False
        errFlag=False
        WriteCmd={}
        for it in self.ModelList():
            WriteCmd.clear()
            WriteCmd={}
            try:
                if self.__trans__.__HTTP_EN__:
                    WriteCmd={"cmd":"write",**it[0].checkWrite()}
                    if len(WriteCmd) == 1:
                        continue
                    self.__trans__.cmd(WriteCmd)
                    it[0].clearCheckWrite()
                    self.DevLog(f"{WriteCmd} Successful")
            except (HttpError,urllib.error.URLError) as e:
                QMessageBox.critical(self,"保存失败/Failed","执行失败/Failed %s"%(e.args[0]))
                self.DevLog(f"{WriteCmd} Failed")
                it[0].clearCheckWrite()
                return False 
            if it[0].submitAll():
                okFlag=True
            else:
                errFlag=True
        return okFlag and not errFlag

完全可控的情况下,可以使用多线程 (组件之间的多线程,建议通过信号触发)

没有崩溃的情况
win10 64 位系统可以平稳运行

相关推荐
深蓝海拓1 天前
PySide6的QTimeLine详解
笔记·python·qt·学习·pyqt
龙腾AI白云3 天前
具身智能体的长期任务规划与记忆机制
python·scrapy·plotly·数据挖掘·pyqt
深蓝海拓4 天前
pyside6的时间相关的基础知识学习笔记
笔记·python·qt·学习·pyqt
无损检测小白白4 天前
【PYQT】QLineEdit控件的信号与槽
python·pyqt
onvadhFTH4 天前
开启数字电源PFC学习之旅
pyqt
深蓝海拓6 天前
PySide6,QCoreApplication::aboutToQuit与QtQore.qAddPostRoutine:退出前后的清理工作
笔记·python·qt·学习·pyqt
深蓝海拓8 天前
PySide6从0开始学习的笔记(二十七) 日志管理
笔记·python·学习·pyqt
极客小云10 天前
【基于AI的自动商品试用系统:不仅仅是虚拟试衣!】
javascript·python·django·flask·github·pyqt·fastapi
进击切图仔10 天前
集成类 pyqt 项目构造流程
pyqt
SNAKEpc1213811 天前
PyQtGraph应用(五):k线回放复盘功能实现
python·qt·pyqt