第七周读书笔记

《代码优化:有效使用内存》读后感 三

     这一章中讲到了剖分,主要目标是从总体上考察标定应用程序的运行时性能。在每个函数的总执行时间里,main函数占用了最多的时间,然而仔细分析可以发现main函数并不是热点,真正的热点是main函数调用的函数。所以在使用剖分软件的过程中,要从总执行时间里减去执行子函数需要的时间。这对新手来说是很容易出现问题的。

      类比同样的,当一个函数不是独立的函数时,即使他占用很多的时间,也不能简单的说明他是热点,比如一个gen_pswd函数占据99%的总时间,而他下的一个子函数,占用了98%的时间,实际上gen_pswd只占用了1%的时间。

      而不是所有函数的执行时间在每次都是一样的,有的热点“漂浮不定”,而这些数据并不是一开始我想的那样,只用分析平均或是最高的占用时间。书中说到,有的情况下实际这些数据都是有意义的,比如一个函数平均运行时间很低,但是在特殊的情况下,他可以成为最热的热点。这显示是存在隐患的,查明这种隐患是十分重要的。      

      调用次数,阅读的过程中,我发现程序效率的提升并不是单纯的无脑提升效率(其实这是很没有效率的),函数的调用次数越高,提高其的效率就对整体程序的运行有更大的提高。

       这其实很好的代表了我对程序运行效率提高的印象,并不是一个机械化的动作,依赖细致的分析和充分的经验。

posted @ 2018-04-19 14:25  啥名字都不让取  阅读(174)  评论(1编辑  收藏  举报