Timer的特点是python自带的模块,是由单独的线程取执行,可以做到周期性的执行任务
from threading import Timer
def delete_audit_log():
logging.info('delete_audit_log')
if not config.DELETE_AUDIT_LOG:
return
now = time.time()
ctime = now - 60*60*3
Audit_Log.objects.filter(ctime__lte=ctime).delete()
global t
t = Timer(60*60, delete_audit_log)
t.start()
t = Timer(60*60, delete_audit_log) # 秒, 任务函数
t.start()