常用文件緩存清理指令:
echo 1 > /proc/sys/vm/drop_caches
drop_caches的值可以是0-3之間的數字,代表不同的含義:
0:不釋放(系統默認值)
1:釋放頁緩存
2:釋放dentries和inodes
3:釋放所有緩存
此次需要清理文件緩存的原因:
使用subprocess.popen調用 mysql指令 mysqldump將數據庫數據導出,通過管道傳遞給程序處理時。程序出現意外,發現內存被使用了很大一部分。比平時多出2G內存。懷疑是管道返回的內容以內存文件形式緩沖在內存中(因為popen返回的是文件指針),通過該指令成功釋放了2G內存。