#coding=utf-8
from time import time
class Cache:
'''簡單的緩存系統'''
def __init__(self):
'''初始化'''
self.mem = {}
self.time = {}
def set(self, key, data, age=-1):
'''保存鍵為key的值,時間位age'''
self.mem[key] = data
if age == -1:
self.time[key] = -1
else:
self.time[key] = time() + age
return True
def get(self,key):
'''獲取鍵key對應的值'''
if key in self.mem.keys():
if self.time[key] == -1 or self.time[key] > time():
return self.mem[key]
else:
self.delete(key)
return None
else:
return None
def delete(self,key):
'''刪除鍵為key的條目'''
del self.mem[key]
del self.time[key]
return True
def clear(self):
'''清空所有緩存'''
self.mem.clear()
self.time.clear()
實現內存緩存
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- volatile是“輕量級”synchronized,保證了共享變量的“可見性”(JMM確保所有線程看到這個變量的...
- 01 有的人覺得自己的生活沒料又無趣,大概這輩子也就這樣了。長大、讀書、工作、結婚、生兒育女,伴隨自己的老去,孩子...
- 連續幾年報名半馬,都沒有中簽,今年非常幸運,報名通過了。 4月21日馬拉松開賽,我一共有85天的準備時間。 今天是...