python 自带的缓存 lru_cache的用法 学习笔记

1、lru_cache提供的功能:

lru_cache缓存装饰器提供的功能有:

缓存被装饰对象的结果(基础功能)

获取缓存信息

清除缓存内容

根据参数变化缓存不同的结果

LRU算法当缓存数量大于设置的maxsize时清除最不常使用的缓存结果

2、lru_cache的实现:

python 自带的缓存 lru_cache的用法 学习笔记_第1张图片

如上所示,lru_cache可传入的参数有两个,如果不传入参数,则使用默认参数。maxsize表示的是被装饰的方法最大可缓存的结果数量,如果是默认值,则表示可缓存128个返回结果,如果maxsize传入的参数是None,则表示可以缓存无限个结果。如果typed设置为true,那么不同类型的函数参数将被分别缓存。例如,f(3)和f(3.0)将被视为不同分别缓存。

3、functiontools.wrap装饰器对lru_cache有影响。

 

参考博客:https://www.cnblogs.com/lifei01/p/14105346.html

你可能感兴趣的:(python学习,python)