Маселе: функциянын натыйжасын белгилүү бир убакытка (ttl) чейин кэшке сактай турган декоратор жазыныз. TTL секундада (int) белгиленет.
1) бул коддун негизги схемасын бардык мүмкүн болгон чек ара учурлары менен сүрөттөңүз.
2) (каалаганча) коддо ишке ашырыңыз
import time
# ишке ашыруу
pass
# print(f"Func in cache: {}")
# print(f"Time is valid: {}")
@ttl_cache(ttl=1)
def multiplier(a, b, **kwargs):
return a * b
print(f'азыр={time.time()}')
print(f'жыйынтык={multiplier(5, 5, x=1)}; убакыт={time.time()}')
print(f'жыйынтык={multiplier(5, 5, x=1)}; убакыт={time.time()}')
print(f'жыйынтык={multiplier(2, 5, x=1)}; убакыт={time.time()}')
time.sleep(2)
print(f'жыйынтык={multiplier(5, 5, x=1)}; убакыт={time.time()}')