dcrd/lru
2019-06-18 14:20:06 -05:00
..
cache_test.go lru: Implement a new module with generic LRU cache. 2019-03-18 10:08:21 -05:00
cache.go lru: Implement a new module with generic LRU cache. 2019-03-18 10:08:21 -05:00
doc.go lru: Implement a new module with generic LRU cache. 2019-03-18 10:08:21 -05:00
example_test.go lru: Implement a new module with generic LRU cache. 2019-03-18 10:08:21 -05:00
go.mod lru: Implement a new module with generic LRU cache. 2019-03-18 10:08:21 -05:00
README.md multi: Use https links where available. 2019-06-18 14:20:06 -05:00

lru

Build Status ISC License GoDoc

Package lru implements a generic least-recently-used cache with near O(1) perf.

LRU Cache

A least-recently-used (LRU) cache is a cache that holds a limited number of items with an eviction policy such that when the capacity of the cache is exceeded, the least-recently-used item is automatically removed when inserting a new item. The meaining of used in this implementation is either accessing the item via a lookup or adding the item into the cache, including when the item already exists.

External Use

This package has intentionally been designed so it can be used as a standalone package for any projects needing to make use of a well-test and conccurrent safe least-recently-used cache with near O(1) performance characteristics for lookups, inserts, and deletions.

Installation and Updating

$ go get -u github.com/decred/dcrd/lru

Examples

  • Basic Usage Demonstrates creating a new cache instance, inserting items into the cache, causing an eviction of the least-recently-used item, and removing an item.

License

Package lru is licensed under the copyfree ISC License.