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 位系统可以平稳运行

相关推荐
钢铁男儿3 天前
PyQt事件处理机制深度指南:超越信号与槽的底层掌控
pyqt
Goona_4 天前
拒绝SQL恐惧:用Python+pyqt打造任意Excel数据库查询系统
数据库·python·sql·excel·pyqt
赤鸢QAQ11 天前
Qt小组件 - 6 异步运行函数
开发语言·python·qt·pyqt
斟的是酒中桃11 天前
基于YOLOv8的火灾智能检测系统设计与实现
人工智能·深度学习·yolo·pyqt
小张贼嚣张13 天前
【无标题】
pyqt
云空14 天前
《PyQtGraph例子库:Python数据可视化的宝藏地图》
开发语言·python·信息可视化·scikit-learn·pyqt
想成为风筝17 天前
从零开始学习深度学习—水果分类之PyQt5App
人工智能·深度学习·计算机视觉·pyqt
云空17 天前
《PyQt6-3D:开启Python 3D开发新世界》
python·3d·pyqt
云空19 天前
《QtPy:Python与Qt的完美桥梁》
开发语言·python·qt·pyqt
云空20 天前
《PyQt6-3D应用开发技术文档》
3d·pyqt