Categorygithub.com/akyoto/cache
modulepackage
1.0.6
Repository: https://github.com/akyoto/cache.git
Documentation: pkg.go.dev

# README

cache

Godoc Report Tests Coverage Sponsor

Cache arbitrary data with an expiration time.

Features

  • 0 dependencies
  • About 100 lines of code
  • 100% test coverage

Usage

// New cache
c := cache.New(5 * time.Minute)

// Put something into the cache
c.Set("a", "b", 1 * time.Minute)

// Read from the cache
obj, found := c.Get("a")

// Convert the type
fmt.Println(obj.(string))

Benchmarks

BenchmarkGet-12         300000000                3.88 ns/op            0 B/op          0 allocs/op
BenchmarkSet-12         10000000               183 ns/op              48 B/op          2 allocs/op
BenchmarkNew-12         10000000               112 ns/op             352 B/op          5 allocs/op

Style

Please take a look at the style guidelines if you'd like to make a pull request.

Sponsors

Cedric FungScott RayapoulléEduard Urbach
Cedric FungScott RayapoulléEduard Urbach

Want to see your own name here?

# Functions

New creates a new cache that asynchronously cleans expired entries after the given time passes.

# Structs

Cache stores arbitrary data with expiration time.