详解Python3定时器任务代码
使用threading写的一个定时器任务demo:
importtime importsys importsignal importdatetime importthreading #定时器 defschedule_update(): t=threading.Timer(0,event_func) t.setDaemon(True) t.start() #执行函数 defevent_func(): now_time=datetime.datetime.now().strftime('%Y-%m-%d%H:%M:%S') print(now_time) exec_update() #update_openvas_dbs_from_cache() interval_time=delay_time() t=threading.Timer(interval_time,event_func) t.setDaemon(True) t.start() #取时间点 defdelay_time(): #nowtime now_time=datetime.datetime.now() #tomorrowtime next_time=now_time+datetime.timedelta(days=+1) next_year=next_time.date().year next_month=next_time.date().month next_day=next_time.date().day #gettomorrow00:00 next_time=datetime.datetime.strptime(str(next_year)+"-"+str(next_month)+"-"+str(next_day)+"00:00:00","%Y-%m-%d%H:%M:%S") #getsecondes delay_time=(next_time-now_time).total_seconds() returndelay_time defquit_sys(signum,frame): sys.exit() #接收C if__name__=="__main__": try: signal.signal(signal.SIGINT,quit_sys) signal.signal(signal.SIGTERM,quit_sys) schedule_update() print("schedule_updateserverstartingup...\nHitCtrl-Ctoquit.\n") while1: time.sleep(1) exceptExceptionase: print(e)
总结
以上所述是小编给大家介绍的Python3定时器任务代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!