Skip to main content

每次调用时都会自动刷新缓存函数输出

项目描述

函数缓存

这个库的灵感来自 requests-cache https://github.com/reclosedev/requests-cache并且整个引擎代码已经从那里复制和修改。

这个库提供了一个装饰器,可以用来装饰你要缓存的函数。

这个库的主要特点是它会在后台线程中自动刷新缓存,这样你的缓存就会保持新鲜。

示例代码

from functions_cache import cache_it
import datetime



@cache_it
def fab_cached(n):
    if n < 2:
        return n
    else:
        return fab_cached(n-2)+fab_cached(n-1)

if __name__ == "__main__":
    t1 = datetime.datetime.now()
    print(fab_cached(100))
    t2 = datetime.datetime.now()
    print(t2-t1)
    t3 = datetime.datetime.now()
    print(fab_cached(100))
    t4 = datetime.datetime.now()
    print(t4-t3)
    

和输出

354224848179261915075
0:00:03.366472
354224848179261915075
0:00:00.014370

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

functions-cache-0.1.0.tar.gz (14.5 kB 查看哈希

已上传 source

内置分布

functions_cache-0.1.0-py3-none-any.whl (15.6 kB 查看哈希

已上传 py3