# NAME
Cache::Memory::Simple - Yet another on memory cache
# SYNOPSIS
use Cache::Memory::Simple;
use feature qw/state/;
sub get_stuff {
my ($class, $key) = @_;
state $cache = Cache::Memory::Simple->new();
$cache->get_or_set(
$key, sub {
Storage->get($key) # slow operation
}, 10 # cache in 10 seconds
);
}
# DESCRIPTION
Cache::Memory::Simple is yet another on memory cache implementation.
# METHODS
- `my $obj = Cache::Memory::Simple->new()`
Create a new instance.
- `my $stuff = $obj->get($key);`
Get a stuff from cache storage by `$key`
- `$obj->set($key, $val, $expiration)`
Set a stuff for cache.
- `$obj->get_or_set($key, $code, $expiration)`
Get a cache value for _$key_ if it's already cached. If it's not cached then, run _$code_ and cache _$expiration_ seconds
and return the value.
- `$obj->delete($key)`
Delete key from cache.
- `$obj->remove($key)`
Alias for 'delete' method(Net::DNS::Lite require this method name).
- `$obj->purge()`
Purge expired data.
This module does not purge expired data automatically. You need to call this method if you need.
- `$obj->delete_all()`
Remove all data from cache.
# AUTHOR
Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM>
# SEE ALSO
# LICENSE
Copyright (C) Tokuhiro Matsuno
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.