本文将给出一个脚本,可以解决搜狗拼音因为内存泄漏占用很多内存的问题。本文的操作系统平台是Deepin Linux。
前言
我弄了个脚本,判断搜狗拼音的内存占用情况(不判断CPU占用),当超过指定值(我设定的是150mb,以资源监视器中看到的为基准),就强制关闭该进程,再重启搜狗拼音,以防止出现内存泄漏占用几个G,导致系统反映变慢甚至死机的情况。
使用方法
脚本采用循环方式,每30秒检查一次(时间间隔可自行更改)。只要添加到自启动就行了,不用加到系统服务。也可以保存为sh文件放在桌面上,每次开机后双击运行一下就OK了。自动在后台监控搜狗拼音的内存占用情况,一旦超标就杀死并重启进程。
脚本如下
#!/bin/bash
PROCESS="sogou-qimpanel" #进程名
MAXMEM=153600 #最大内存阀值,单位KB,如判断物理内存,下面要用VmRSS 参数.
while true
do
ID=`ps -ef | grep "${PROCESS}" | grep -v "grep" | awk '{print $2}'`
if [ ! -n "$ID" ]; then
echo "$PROCESS not exist"
exit 1
fi
# MEM=`cat /proc/$ID/status | grep -e VmRSS | awk '{print $2}'`
MEM=`cat /proc/$ID/status | grep -e RssAnon | awk '{print $2}'`
if [ $MEM -gt $MAXMEM ]; then
#超过了,kill或者restart进程
kill $ID
sleep 3
fi
/usr/bin/sogou-qimpanel start
sleep 30
done
相关主题