Python中递归的时间限制

时间:2019-03-24 23:56:49

标签: python recursion

我有几个要遍历的数据文件,并将它们传递给递归算法。我想为每个文件设置一个时间限制(例如5个小时)。我可以使用if循环来做到这一点,就像这样:

if time < time_limit:
    do next step
else:
    return 0

,但这只会在给定步骤完成后才检查时间限制,这可能需要几个小时。例如,步骤n可能会在4小时50分钟(不到5小时)后结束,因此程序将转到步骤n + 1,这可能会再持续2个小时。完成步骤n + 1后,时间将为6小时50分钟,超过5小时,因此该程序将停止,但会比需要的时间晚一些。无论循环中位于何处,我如何都能使递归精确地在5小时后停止,然后继续执行下一个数据文件。注意:某些步骤正在调用其他非python程序,因此我无法在这些步骤中检查时间。谢谢!

0 个答案:

没有答案