标签: c++ unix process solaris
可能重复: Freeing of allocated memory in Solaris/Linux
我在其中一篇文章here
这是关于solaris的。 文章说每当执行free()调用时,内存将返回给应用程序而不是系统,以便应用程序可以重用已释放的内存。 这就是为什么一个进程使用的内存将逐渐增加而不是每次释放都减少的原因。现在我认为释放的内存将返回到系统,它将根据系统决定重用。但事实上事实并非如此。
我正面临一个实际问题,即进程占用3.8GB的内存,而sybase库中的一个用于分配内存并突然失败的时间点。
现在我的问题是,有没有办法可以让应用程序将内存返回给系统?