premo625's picture
Upload 43 files
44bf352 verified
raw
history blame contribute delete
551 Bytes
from collections import OrderedDict
class ModelCache(OrderedDict):
def __init__(self, max_size=2):
super().__init__()
self.max_size = max_size
def __getitem__(self, key):
value = super().__getitem__(key)
self.move_to_end(key)
return value
def __setitem__(self, key, value):
if key in self:
self.move_to_end(key)
super().__setitem__(key, value)
if len(self) > self.max_size:
oldest = next(iter(self))
del self[oldest]