def get(fn, *args, **kwargs):
"""??redis?cache??
fn: ??, ????????
return: data fn????"""
key = gen_keyname(fn)
r = createRedis()
#r.flushall()
if key not in r.keys():
o = fn(*args, **kwargs)
#?????????
f = cStringIO.StringIO()
cPickle.dump(o, f)
s = f.getvalue()
f.close()
r.set(key, s)
s = r.get(key)
f = cStringIO.StringIO(s)
o = cPickle.load(f)
f.close()
return o
评论列表
文章目录