菜鸟笔记
提升您的技术认知

linux结束程序内存不会马上释放的解决方法

Linux下频繁读写文件时,内存资源被耗尽,当程序结束后,内存不会释放需要清除缓存。Linux缓存有dentry,buffer cache,page cache。

注:Dentry用来加速文件路径名到inode的转换;buffer cache加速磁盘块的读写;page cache加速inode的读写。缩短IO调用时间。

释放page cahce

echo 1 > /proc/sys/vm/drop_cache

释放dentry和inode

echo 2 > /proc/sys/vm/drop_cache

释放page cache,dentry,inode

echo 3 > /proc/sys/vm/drop_cache