summaryrefslogtreecommitdiff
path: root/repoze/lru/__init__.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2009-06-15 08:21:39 +0000
committerChris McDonough <chrism@plope.com>2009-06-15 08:21:39 +0000
commitfa8cd713783ea7fe69eda61eb05b7369545bc5d5 (patch)
treeefe9df352f0bc7f80a91949e1f74ba9917dd53b2 /repoze/lru/__init__.py
parente31f436fb19e61ce8e35b049200d13e4d2f0bd82 (diff)
downloadrepoze-lru-fa8cd713783ea7fe69eda61eb05b7369545bc5d5.tar.gz
Add a clear method; prep for 0.2.
Diffstat (limited to 'repoze/lru/__init__.py')
-rw-r--r--repoze/lru/__init__.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/repoze/lru/__init__.py b/repoze/lru/__init__.py
index b5e5203..94362fb 100644
--- a/repoze/lru/__init__.py
+++ b/repoze/lru/__init__.py
@@ -9,14 +9,18 @@ class LRUCache(object):
""" Implements a psueudo-LRU algorithm (CLOCK) """
if size < 1:
raise ValueError('size must be >1')
+ self.size = size
+ self.lock = threading.Lock()
+ self.clear()
+
+ def clear(self):
+ size = self.size
self.clock = []
for i in xrange(0, size):
self.clock.append({'key':_marker, 'ref':False})
- self.size = size
self.maxpos = size - 1
self.hand = 0
self.data = {}
- self.lock = threading.Lock()
def get(self, key, default=None):
try: