LRU 簡易シミュレーション
コンピューターサイエンス理論 / 全 5 枚
コンピューターサイエンス理論 - LRU 簡易シミュレーション
入りきらないとき、何を追い出すか
枠が 3 つしかないキャッシュに 4 つ目が来たら、どれかを捨てるしかありません。LRU は一番長く使われていないものを捨てる決め方です。
追い出す順番を間違えると、必要なものばかり捨てて何度も取りに行くことになります。
使ったものを末尾へ動かすのが要点です。先頭が自動的に一番古いものになるので、あふれたら先頭を捨てます。
function access(cache, key, capacity) {
const i = cache.indexOf(key);
if (i !== -1) cache.splice(i, 1);
cache.push(key);
if (cache.length > capacity) cache.shift();
return cache;
}1 / 5
← → キーでも送れます