CHI::Driver::Memory(3)User Contributed Perl DocumentatioCHI::Driver::Memory(3)NAMECHI::Driver::Memory - In-process memory based cache
VERSION
version 0.55
SYNOPSIS
use CHI;
my $hash = {};
my $cache = CHI->new( driver => 'Memory', datastore => $hash );
my $cache = CHI->new( driver => 'Memory', global => 1 );
DESCRIPTION
This cache driver stores data on a per-process basis. This is the
fastest of the cache implementations, but data can not be shared
between processes. Data will remain in the cache until cleared,
expired, or the process dies.
To maintain the same semantics as other caches, references to data
structures are deep-copied on set and get. Thus, modifications to the
original data structure will not affect the data structure stored in
the cache, and vica versa. See CHI::Driver::RawMemory for a faster
memory cache that sacrifices this behavior.
CONSTRUCTOR OPTIONS
When using this driver, the following options can be passed to
CHI->new() in addition to the CHI. One of datastore or global must be
specified, or else a warning (possibly an error eventually) will be
thrown.
datastore [HASHREF]
A reference to a hash to be used for storage. Within the hash, each
namespace is used as a key to a second-level hash. This hash may
be passed to multiple CHI::Driver::Memory constructors.
global [BOOL]
Use a standard global datastore. Multiple caches created with this
flag will see the same data. Before 0.21, this was the default
behavior; now it must be specified explicitly (to avoid
accidentally sharing the same datastore in unrelated code).
DISCARD POLICY
For CHI/SIZE AWARENESS caches, this driver implements an 'LRU' policy,
which discards the least recently used items first. This is the default
policy.
SEE ALSO
CHI::Driver::RawMemory, CHI
AUTHOR
Jonathan Swartz <swartz@pobox.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Jonathan Swartz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
perl v5.14.2 2012-07-04 CHI::Driver::Memory(3)