Rust RAM有限的LRU缓存?

问题描述:

Rust是否有RAM限制的LRU缓存?我想指定一个30 MB的限制,当它超过限制时,它开始删除LRU条目。我可以找到number of entries limitedRust RAM有限的LRU缓存?

+0

30MB是什么意思?缓存+包含的键/值的总占用空间是30MB?或者只是有效载荷?你如何解释分配的价值?如果某些值与FlyWeight模式共享某些部分会怎样?你是否需要考虑分配的内存块使用不足的开销?分配器数据结构的开销?碎片?分配器本身在将它们释放到操作系统之前缓存内存页的事实? =>想象一下创建一个缓存的梦魇,它试图在记忆会计中做到彻底...... –

fn set_capacity(&mut self, capacity: usize)设置缓存可容纳的键值对的数量。因此,如果您想将其限制为30MB,则需要计算键/值对的大小,并将30MB除以键/值对的大小以获得您应该设置LRU缓存的容量。