用途:面向 Dart(尤其移动端)开发,帮助排查内存泄漏、降低垃圾回收压力,并正确管理流、监听器等资源的生命周期。
主要能力与要点: 资源生命周期:在 dispose() 中显式关闭 StreamController、Timer、FocusNode 和 ChangeNotifier;用 late 延迟对象创建,减少初始内存占用。 垃圾回收压力:Dart 的分代 GC 针对短生命周期对象优化,但单帧创建大量对象仍会造成卡顿;避免在 build() 或高频循环中新建对象,尽量复用数据结构;长生命周期列表用 list.clear() 而非重新赋值。 移动端专项:用 Isolate.run() 处理重计算(如大于 1MB 的 JSON 解析、图像处理),避免阻塞主线程;Image.network 或 Image.asset 使用 cacheWidth、cacheHeight 避免按原尺寸加载高分辨率图片;用 DevTools Memory View 定位页面关闭后仍留在堆中的泄漏对象。 大数据处理:不要一次性把整个数据集载入内存,改用服务端或本地数据库(Isar、SQLite)分页;大文件或实时数据用 Stream 分块处理,而非整体缓冲。
使用方式:该技能以说明文档形式提供,按上述规则在代码中落实资源释放、对象复用、隔离计算与分页/流式处理即可。
限制:资料未提供具体安装命令、版本要求、平台支持范围或收费信息,暂未提供。