日期:2014-05-16  浏览次数:20619 次

关于malloc的问题
用malloc分配了空间 但是没用free释放 这个进程结束后分配的空间还在不? 会不会自动回收? Linux和Windows下面的情况是不是一样的?

------解决方案--------------------
所有的保护模式操作系统应该都有进程地址空间隔离机制,也就是进程被杀后所有的资源都会释放

实现的比较好的系统,与进程相关的内核资源也应该释放(比如用引用计数法)
------解决方案--------------------
1、free掉以后这块空间肯定时存在的啊,而且即使free掉了这快空间里面的内容也没有变化。
2、free掉后操作系统时可以回收的。
------解决方案--------------------
要养成良好的习惯,申请空间,使用完以后一定要释放。

在一个大的工程中,足够多的内存占用 就会使系统崩溃。



------解决方案--------------------
探讨

要养成良好的习惯,申请空间,使用完以后一定要释放。

在一个大的工程中,足够多的内存占用 就会使系统崩溃。