程序卡顿
在win10上运行QT发布的程序比在Ubuntu上面卡很多,为了使界面更流畅,找到原因,一个一个调整。
1.QFile.remove()
为了清空文件的内容,在界面线程调用了QFile的remove(),将该调用去除,改为下一次打开文件时时,设置QIODevice::Truncate
, open( QIODevice::Truncate )
2.QSound.play()
在界面线程中调用了QSound.play(),用来播放音乐。
解决方法:将播放音乐单独放到其他线程,在界面线程中仅仅发送信号来通知其他线程来播放音乐。
总结
总之主线程,也就是用于显示界面的线程中,最好除了界面的切换,显示及修改操作外,尽量减少其他的操作,让其他的操作尽量在其他的线程中运行,而不是在主线程中,这样能尽量地减少界面的卡顿。使用ubuntu发布程序比在Windows上会流畅很多。