linux 写一个脚本,可以实时保存进程的内存情况,验证是否有内存泄露
请自行修改 PROC_NAME 和 LOG
bash
#!/bin/bash
PROC_NAME="test_media_engi"
LOG="gc_0410_11.txt"
PID=$(pgrep -n $PROC_NAME)
while true; do
DATE=$(date +"%Y-%m-%d %H:%M:%S")
# 修复:正确提取 private 内存
MEM=$(pmap -d $PID | grep -oE 'writeable/private: [0-9]+' | awk '{print $2}')
echo "$DATE writeable/private: $MEM KB" >> $LOG
sleep 1
done
如果直接在终端执行
bash
PROC_NAME="test_media_engi"; LOG="gc_0410_11.txt"; PID=$(pgrep -n $PROC_NAME); while true; do DATE=$(date +"%Y-%m-%d %H:%M:%S"); MEM=$(pmap -d $PID | grep -oE 'writeable/private: [0-9]+' | awk '{print $2}'); echo "$DATE writeable/private: $MEM KB" >> $LOG; sleep 1; done