装饰器实现简易限制函数调用频率
Posted niucunguo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰器实现简易限制函数调用频率相关的知识,希望对你有一定的参考价值。
#装饰器实现简易限制函数调用频率,如10秒一次
import math
import time
def wrapper(func):
start_time =0
def inner(*args,**kwargs):
nonlocal start_time
t = time.time() - start_time
if t >= 10:
start_time =time.time()
ret = func(*args, **kwargs)
return ret
else:
print(f"技能还在冷却当中,倒计时{math.ceil(10-t)}秒")
return inner
@wrapper
def foo():
print("开始瞄准,射击")
while True:
foo()
time.sleep(1)
以上是关于装饰器实现简易限制函数调用频率的主要内容,如果未能解决你的问题,请参考以下文章