Tencent / matrix

Matrix is a plugin style, non-invasive APM system developed by WeChat.
Other
11.65k stars 1.89k forks source link

IdleHandlerLagTracer 存在 fd 泄漏 #876

Open iMeiji opened 11 months ago

iMeiji commented 11 months ago

异常类型:IdleHandlerLagTracer 存在 fd 泄漏

手机型号:任意

手机系统版本:任意

matrix版本:2.0.8、2.1.0

gradle版本:任意

问题描述:App 进入 ActivityA 后,会调用 Tracer.onStartTrace 开启监控,退出 ActivityA 会调用 Tracer.onCloseTrace。StartTrace 后 IdleHandlerLagTracer 会初始化 idleHandlerLagHandlerThread,关键问题是 idleHandlerLagHandlerThread 在 onDead 没有调用 quit,HandlerThread 的线程将继续运行,导致 fd 泄漏。

Screenshot

这里贴一下线上使用 koom 收集到 fd 泄漏的情况,IdleHandlerLagThread 泄漏高达 92 次,建议尽快修复

Snipaste_2023-12-14_14-36-38