发新话题
打印

应用进程正常或非法退出时,malloc分配的内存会被释放吗?

应用进程正常或非法退出时,malloc分配的内存会被释放吗?

今天做了一个试验来验证这个问题,我在程序中malloc了大量的内存,却不释放,结果程序退出后,用free看内存并没有大量减少,决定很奇怪,本来觉得肯定会内存泄露,但不管我再怎么执行这个程序,内存都没有减少,想请教一下高手这是什么原因,我用的是FC8,多谢!!      

TOP

当然会释放啦,如果这么简单的办法就能整垮操作系统,那这种操作系统也就无愧于垃圾的称号了。      
1,本人乃Linux伊甸园“Linux内核学习”,“红旗等发行版”版主,请大家捧场。
2,红旗Linux在设备驱动,系统设置,中文美化,易用性方面做得非常好,建议大家使用。
3,本人是红旗Linux的粉丝,不是枪手。

TOP

你的程序是一个单独的进程吧,进程死了会释放所有资源的,要是不是单独的进程这样干肯定会造成内存泄露。      

TOP

malloc所分配的内存在进程的堆上,进程退出系统会回收进程的堆栈空间的      

TOP

发新话题