您的位置:首页 > 其它

切身体会,debug与release的区别

2016-06-20 23:55 218 查看
     不知道大家用vs打包的时候会不会特意改为release版本后打包。

    我最近改了一个程序,打包的时候没注意,用debug打的包,结果现场反馈说对图像进行处理的时候比上一个版本的程序慢一些。我就感觉很奇怪,我又没有改过图像处理那块,只是将下载的图像存成多份而已,怎么会影响图像处理的效率呢。反复实验后才发现,原来是打包的时候用的是调试版本(debug)打的包,而debug版是没有经过优化的。

    以下这段摘自网上:

    Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 

    其实这段话我知道自己肯定是看到过的,之前有段时间可能还特意用release打了包的。只是在开发的过程中,debug和release之间的差距并不是很容易发现,可能在某些情况下,它们的差距微乎其微。这次现场可以发现问题,我想应该有这么几个原因,一是因为他们特别熟悉程序,因为一直就在用,所以有差别就能感觉出来;二是因为档案多页数也多,就算处理一页的差别比较小,几百页,几千页下来也能感觉的出来差距。而对我们程序员来说,要通过经验来发现这个问题恐怕要难上许多。 
     把这个问题写出来呢,有两个目的。一个是告诉自己不摔跤永远不知道疼;另一个是希望大家有遇到相似的情况的时候也分享出来,我想应该比单纯的言传身教的好。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: