trackMemoryLeak function
内存泄漏追踪简化 API / Simplified memory leak tracking API
提供比 MemoryInspectorService.instance.trackObject() 更短的调用方式,
降低业务代码的侵入感。
Provides shorter call patterns than MemoryInspectorService.instance.trackObject(),
reducing the intrusion feeling in business code.
用法示例 / Usage examples:
// 顶层函数风格 / Top-level function style
trackMemoryLeak(myBloc, tag: 'HomePage_myBloc');
// 扩展方法风格 / Extension method style
myBloc.trackMemoryLeak(tag: 'HomePage_myBloc');
注册对象进行泄漏追踪 / Register an object for leak tracking
object 要追踪的对象 / Object to track
tag 可选标签,用于 UI 识别 / Optional tag for UI identification
expectedReleaseAfter 预期释放时间,默认 30 秒 / Expected release time, default 30 seconds
返回追踪 ID(对象 identityHashCode)/ Returns tracking ID (object identityHashCode)
Implementation
/// 注册对象进行泄漏追踪 / Register an object for leak tracking
///
/// [object] 要追踪的对象 / Object to track
/// [tag] 可选标签,用于 UI 识别 / Optional tag for UI identification
/// [expectedReleaseAfter] 预期释放时间,默认 30 秒 / Expected release time, default 30 seconds
/// 返回追踪 ID(对象 identityHashCode)/ Returns tracking ID (object identityHashCode)
int trackMemoryLeak(
Object object, {
String? tag,
Duration? expectedReleaseAfter,
}) {
return MemoryInspectorService.instance.trackObject(
object,
tag: tag,
expectedReleaseAfter: expectedReleaseAfter,
);
}