杭州建设网站哪家好港口备案怎么在网站做
QT中线程的退出分析
- 前言
 - 开发环境
 - 代码的整改
 - 第一次修改
 - 第一次修改引起的问题
 - 问题原因分析
 - 解决方法
 
- 第二次修改
 
前言
软件实际开发过程中有好几处要实现这么一个功能:PC端软件“应用程序重启” ,本来这是一段比较简单的事情,但是因为重启软件报通信异常(错误日志中有记录通信异常的错误)。此问题解决起来一直在禅道中反反复复的关闭了又打开,没有得到彻底的解决。
 基于这种情况,我参与了此问题的解决,在解决的过程中发现了一些有意思的东西,并把问题记录了下来。
 这也就是今天这遍文章的由来。
开发环境
系统:windows 10 ,windows 11
 QT版本:qt5.12.9
 编译器:MSVC (VS2017)
代码的整改
第一次修改
原来是三处都写了重启应用程序,把三次相同的代码合为一处
 int restartApp()
{QString program = QApplication::applicationFilePath();QStringList arguments = QApplication::arguments();if (!arguments.contains("restart")){arguments.append("restart");}QString wor