NAME
XS::Base - C/XS 实现的高效 JSON-like 缓存(支持可配置 strict_mode、并发读写锁)
SYNOPSIS
use XS::Base qw(has del def clr);
my ($key,$value);
$key = "a";
$value = 5;
has $key=>$value;
def $key=>10;
$key = "a->b";
$value = {"c"=>6};
has $key=>$value;
$value = has("a");
$value = has("a->b");
$value = has("a->b->c");
clr();
DESCRIPTION
XS::Base是进程内(包括线程之间)高效快速的数据共享,支持scalar,array和hash, 也支持主程序和use package之间的全局数据共享。 可以避免大量的全局变量使用,也解决主程序和package之间的数据传递的问题。
函数说明
has函数
该函数用于设置缓存/获取缓存参数。
- 参数key
-
参数key是存储数据的路径,路径支持多级hash
my $key = "key1->key2->key3"; # 表示多级hash,$hash->{key1}->{key2}->{key3}
- 参数value
-
参数value是存储的数据,可以是scalar,array或者hash
del函数
use XS::Base qw(:all);
my ($key,$def_value);
del $key=>$def_value;
该函数用于设置设置缓存数据的默认值,如果数据已经存在,则不覆盖(不设置)。
del函数
use XS::Base qw(:all);
del($key);
该函数用于删除节点
clr函数
该函数用于清空所有数据