据说时候这样的。我也相信,但是,怎么确认这一点?
既然,退出程序会自动回收。那么,除非是那种线上服务器程序,需要长期运行,甚至一年不关机的都要运行的那种。
一般的程序,运行完就退出,你可以不用释放内存。最常见的是一些常用的linux命令行,单次执行,很快完成,不free内存一点没关系。
当然,这些程序代码量少,需要malloc的地方法也少,可能也就一两次,通常不会忘记释放。
而大程序,比如http服务器,确实可能需要长期运行的,这种大一点的程序,很多地方都需要分配内存,就很可能忘记释放 。
真要命,不需要释放时,我们都记得要释放;真正需要释放时,我们又会忘记,被搞的焦头烂额。
理解没问题。
如果跑一次很短时间就结束,自然会释放。
但很多情况是作为服务器驻留内存运行,那就要及时释放了。