memorycache

package module
v0.0.0-...-f4bebbb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 24, 2018 License: MIT Imports: 3 Imported by: 2

README

Go-memorycache-example

Менеджер кеша в памяти на Golang, хранилище данных в формате ключ/значение

Как установить?

go get github.com/maxchagin/go-memorycache-example

Как использовать?

Необходимо импортировать пакет

import (
	memorycache "github.com/maxchagin/go-memorycache-example"
)

Инициализировать кеш

// Создаем кеш с временем жизни по-умолчанию равным 5 минут и удалением просроченного кеша каждые 10 минут
cache := memorycache.New(5 * time.Minute, 10 * time.Minute)

Использовать

// Установить кеш с ключем "myKey" и временем жизни 5 минут
cache.Set("myKey", "My value", 5 * time.Minute)

// Получить кеш с ключем "myKey"
i := cache.Get("myKey")

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

Cache struct cache

func New

func New(defaultExpiration, cleanupInterval time.Duration) *Cache

New. Initializing a new memory cache

func (*Cache) Delete

func (c *Cache) Delete(key string) error

Delete cache by key Return false if key not found

func (*Cache) GC

func (c *Cache) GC()

GC Garbage Collection

func (*Cache) Get

func (c *Cache) Get(key string) (interface{}, bool)

Get getting a cache by key

func (*Cache) Set

func (c *Cache) Set(key string, value interface{}, duration time.Duration)

Set setting a cache by key

func (*Cache) StartGC

func (c *Cache) StartGC()

StartGC start Garbage Collection

type Item

type Item struct {
	Value      interface{}
	Expiration int64
	Created    time.Time
}

Item struct cache item

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL