关于Debug版正常运行,release版运行崩溃的问题
通常情况下,Debug版用于程序的调试优化,尽可能将遇到的BUG找到并解决掉;
这样编译出的Release版才可能有效可靠的运行。然而如果编译出的Debug版程序正常运行,
而Release版程序却不能正常运行或者崩溃。这种情况比较棘手。下面是经验只谈。
[1]定位。首先Release版程序是可以进行调试的。尽管调试信息不如Debug版调试信息完整可靠,
Release版调试时跳转的行可能不怎么那么精确,但是可以大致确定程序在哪一块出现了问题。
运行崩溃时,定位在哪里崩溃的是解决问题的关键。
[2]琢磨。这个视具体问题具体分析。主要围绕出错的代码段考虑,或者换其他方法替换代码段,
或者是否可以将定位代码段移除或移出(比如代码段之前在子线程函数中,是否可以将代码段移出子线程)
[3]总结。这个很重要。