发新帖

一个关于限制进程内存的点子

sinan / 2019-11-14 17:25
浏览: 146 / 回复: 3
查看: 146|回复: 3

一个关于限制进程内存的点子

[复制链接]
收藏
跳转到指定楼层
输入法总是内存溢出,我不知道怎么办,或许只有研究fcitx的大牛才能修复这个BUG。
但是我们能不能设计一个机制,提前检测到进程异常,然后在它吃光所有资源前就把它kill掉?
下面是我想到的步骤:

1、预先设定进程的最大内存使用量和cpu占用率:
process_name:fcitx
max_cpu_use:0.1
max_memery_use(MB):400

2、终端中“ps”得到进程的PID,“top”命令检测该PID的内存/CPU使用量

3、每3-5秒检测一次,记录最后一次的数据(now)和倒数第二次的数据(last)

4、now和last在处理器占用和内存占用两个维度的斜率是一个参数,
当前的内存和处理器占用是另外两个参数
这三个参数综合起来考虑是否杀死进程

60

主题

3327

帖子

1万

积分

drw-r--r--

Rank: 7Rank: 7Rank: 7

积分
10846
QQ
kirigaya 超级版主 发表于 2019-11-14 17:43:52 | 显示全部楼层
cgroups就是做这个限制的,但是并不是kill掉就能解决的… 因为kill了以后可能会导致输入法彻底无法使用


https://blog.justforlxz.com | Deepin Developer | 永远不要放弃思考

112

主题

1296

帖子

6440

积分

-rw-rw-rw-

Rank: 6Rank: 6

积分
6440
QQ
sinan 发表于 2019-11-14 21:10:10 来自移动端 | 显示全部楼层
kirigaya 发表于 2019-11-14 17:43
cgroups就是做这个限制的,但是并不是kill掉就能解决的… 因为kill了以后可能会导致输入法彻底无法使用 ...

输入法。导致系统卡死的问题,究竟是什么原因呢?是搜狗输入法的问题。还是fcitx的问题。

28

主题

534

帖子

2817

积分

-rw-rw-r--

Rank: 5Rank: 5

积分
2817
inface 发表于 2019-11-14 21:19:41 来自移动端 | 显示全部楼层
wbpy+搜狗2.2[sogou-qimpanel]这狗东西【内存泄漏罪魁祸首】只要定时killall sogou-qimpanel再开就行了。会点py很容易的。当然再写个开机服务(shell)也行
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回列表 返回版块 返回顶部