首页 > 解决方案 > 在硬盘上缓冲昂贵的功能

问题描述

我的程序中有一些函数需要相对较长的计算时间,同时只能以特定数量的方式创建。Python 中是否有实现(库,甚至可能是装饰器实现等),其中仅当硬盘驱动器上没有可用的缓冲区文件时才执行该函数?就像是:

def main():
    sub_function(param1, param2)


def sub_function(param1, param2):
    if buffer_file_with_exact_same_arguments_exists_on_hd(param1, param2):
        return buffered_result
    ... time-consuming main function body ...
    save_to_hd(param1, param2)
    return result

我自己写了类似的东西,但注意到可能存在可能导致错误的特殊情况。看到其他人可能有同样的问题,我想知道是否有人知道一个好的库或其他解决方案。非常感谢!

编辑:建议使用装饰器的解决方案,但这些仅在 RAM 中工作,不缓冲到硬盘驱动器。与硬盘驱动器缓冲一起工作的实现将是更可取的。

标签: pythonpython-3.x

解决方案


推荐阅读