根据文档,来自functools的lru_cache的默认值是128。但没有定义任何单位。
装饰器用回忆录可调用的函数包装,保存到maxsize最近的调用。当周期性地使用相同的参数调用昂贵的或I/O绑定函数时,它可以节省时间。 由于字典用于缓存结果,函数的位置和关键字参数必须是可选的。 不同的参数模式可以被认为是具有独立缓存条目的不同调用。例如,f(a=1,b=2)和f(b=2,a=1)的关键字参数顺序不同,可能有两个单独的缓存条目。 如果指定了user_function,则必须是可调用的。这允许将lru_cache装饰器直接应用于用户函数,使maxsize的默认值为128。
我的问题是,是否有任何单位,如比特,字节,兆字节附加到此,还是这是一个与使用的内存没有简单关系的任意数字?
发布于 2020-06-03 22:35:21
用可调用的回忆录包装函数,保存到
maxsize,最近的调用
这个短语中的单位是“呼叫”。即每种论证模式及其相应的结果。每个缓存调用的大小将取决于函数的签名;如果它返回一个占用千兆字节内存的对象,那么您可能需要减少maxsize。
https://stackoverflow.com/questions/62183821
复制相似问题