FLUTTER ECOSYSTEM

weak_map

WeakMap 是一种键被弱引用的映射。WeakContainer 让你可以检查一个对象是否与之前相同。使用弱引用缓存函数以实现记忆化。

最新版本
4.0.1
近 30 天下载
4.7万
喜欢数
19
Pub 分数
150

Package Overview

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

插件概览

WeakMap 是一个 Dart 包,实现了使用弱引用键的映射,当没有其他引用存在时,允许对键对象进行垃圾回收。它通过防止内存泄漏来实现高效的内存管理。WeakContainer 提供对象的身份检查,确保它们与之前是同一个实例。该包通过使用弱引用支持缓存函数的备忘录化,非常适合临时数据存储。专为长时间运行的应用程序设计,兼顾性能和安全性。

适合场景
  • 带自动清理的记忆化
  • 跟踪对象身份而不泄露
  • 缓存与临时对象相关的结果
  • 避免回调中的内存泄漏
  • 按实例存储元数据
  • 临时状态管理
主要特点
  • 弱引用键
  • 可垃圾回收的条目
  • 基于身份的对象检查
  • 内置的 memoization 工具
  • 跨平台支持
  • 轻便且快速
适合对象
  • 长时间运行的应用程序,频繁创建对象
  • 内存敏感的应用程序
  • 需要实例特定数据的插件
  • 开发人员避免强引用循环
  • 需要临时数据存储的用例
  • 高性能缓存
使用建议
  • 密钥可能会意外收集
  • 不适用于持久数据
  • 无直接迭代或大小访问
  • 限制为对象键存储
  • 在异步上下文中需要谨慎处理
  • 最好与瞬态或短期对象一起使用
支持平台AndroidiOSWebmacOSWindowsLinux

安装插件

flutter pub add weak_map

所属分类

源码仓库

关联项目