麒麟系统 mate_indicators 进程占用内存资源高

12 篇文章 3 订阅

问题描述

桌面组件mate-indicators在长时间使用后发现有占用内存过高的情况,尤其是在某些用户场景,如频繁打开日历或不停点击日历等操作,会造成mate-indicators占用内存的迅速增长,且在长时间不操作的情况下,占用的内存不释放。

影响版本

影响版本
V10-SP1-0711及以后版本
V10-SP2-0524版本

触发条件

频繁打开日历或不停点击日历图形工具等操作

问题分析

从现象来看,mate-indicators在运行中未及时回收内存,长时间运行时,就出现了内存占用过高的现象。杀掉mate-indicators进程,重启后,发现占用内存显著降低,确定问题为内存泄漏。

进一步对比代码,定位问题出在indicator-calendar.cpp中的static gboolean update_time(IndicatorCalendar *d)此函数内。

此函数归属于日历与时间组件,主要负责桌面右下角的时间。跟踪代码发现,在此函数结束时,有多个资源未释放。
对未释放资源进行分析,主要由部分字符串和1个GSettings指针等占用组成。在短时间内现象并不明显,只有在长时间运行或者mate-indicators被频繁调用时,会出现明显的内存泄漏现象。

问题影响

长时间运行后,mate-indicators占用的内存会多达几个G

问题修复

临时解决方案

打开服务器客户端,输入 sudo systemctl restart lightdm 命令重启图形化服务可释放内存,解决 mate-indicators 进程占用高问题。

sudo systemctl restart lightdm

永久解决方案

升级mate-indicators至mate-indicators-20150918kord0ukui58-10.p07.ky10及以后版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值