weak_cache 2.1.2 copy "weak_cache: ^2.1.2" to clipboard
weak_cache: ^2.1.2 copied to clipboard

Weak cache that uses weak references for holding values. Implements full Map interface including keys and values iteration.

2.1.2 #

  • Optimize cache entry removal performance.

    Previously removeWhere was used which caused iteration of whole cache set on every removal. Now additional Expando is used to map Weak references to their keys.

2.1.1 #

  • Fix web release target compilation.

2.1.0 #

  • Add weak_cache.utils library with expandoCompatible utility function.
  • Update type check, to correctly detect all disallowed values types.

2.0.1 #

  • Remove dependency on package:disposed.
  • Fix "leak" of nulled Weak references, if objects where added while iterating.

    Generally you should not modify cache while iterating it, but this is technically possible.

2.0.0 #

  • Requires Dart 3.0.0
  • BREAKING: remove WeakCache.cacheFinalizer.
  • Fix memory leak caused by instance member finalizer.
  • Optimize containsValue.
  • Fix concurrent modification error, now using keys/values/entries will temporarily prevent them from being garbage collected.

1.0.0 #

  • Initial version.
2
likes
140
pub points
5%
popularity

Publisher

unverified uploader

Weak cache that uses weak references for holding values. Implements full Map interface including keys and values iteration.

Repository (GitHub)
View/report issues

Topics

#cache #memory

Documentation

API reference

License

ISC (LICENSE)

Dependencies

meta

More

Packages that depend on weak_cache