详解Python3定时器任务代码


Posted in Python onSeptember 23, 2019

使用threading写的一个定时器任务demo:

import time
import sys
import signal
import datetime
import threading
#定时器
def schedule_update():
  t = threading.Timer(0, event_func)
  t.setDaemon(True)
  t.start()
#执行函数
def event_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()
#取时间点
def delay_time():
  # now time
  now_time = datetime.datetime.now()
  # tomorrow time
  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
  # get tomorrow 00:00
  next_time = datetime.datetime.strptime(str(next_year)+"-"+str(next_month)+"-"+str(next_day)+" 00:00:00", "%Y-%m-%d %H:%M:%S")
  # get secondes
  delay_time = (next_time - now_time).total_seconds()
  return delay_time
def quit_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_update server starting up...\nHit Ctrl-C to quit.\n")
    while 1:
      time.sleep(1)
  except Exception as e:
    print(e)

总结

以上所述是小编给大家介绍的Python3定时器任务代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python栈类实例分析
Jun 15 Python
基于Django的python验证码(实例讲解)
Oct 23 Python
Python设计模式之MVC模式简单示例
Jan 10 Python
对命令行模式与python交互模式介绍
May 12 Python
详解Django+Uwsgi+Nginx的生产环境部署
Jun 25 Python
python安装pywin32clipboard的操作方法
Jan 24 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
python分数表示方式和写法
Jun 26 Python
python递归调用中的坑:打印有值, 返回却None
Mar 16 Python
python中什么是面向对象
Jun 11 Python
pytorch 多分类问题,计算百分比操作
Jul 09 Python
python安装cx_Oracle和wxPython的方法
Sep 14 Python
python应用文件读取与登录注册功能
Sep 23 #Python
Python爬虫 urllib2的使用方法详解
Sep 23 #Python
Python 正则表达式爬虫使用案例解析
Sep 23 #Python
python处理document文档保留原样式
Sep 23 #Python
python 进程间数据共享multiProcess.Manger实现解析
Sep 23 #Python
python程序 线程队列queue使用方法解析
Sep 23 #Python
python程序 创建多线程过程详解
Sep 23 #Python
You might like
在服务端进行目录建立、删除,文件上传、删除的过程的php代码
2008/09/10 PHP
php 异常处理实现代码
2009/03/10 PHP
基于PHP array数组的教程详解
2013/06/05 PHP
再论Javascript的类继承
2011/03/05 Javascript
图片无缝滚动代码(向左/向下/向上)
2013/04/10 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
jQuery.cookie.js使用方法及相关参数解释
2017/03/06 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
详解ES6之async+await 同步/异步方案
2017/09/19 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
Vue 项目部署到服务器的问题解决方法
2017/12/05 Javascript
Vue项目中使用Vux的安装过程
2018/05/01 Javascript
微信小程序如何访问公众号文章
2019/07/08 Javascript
微信小程序在其他页面监听globalData中值的变化
2019/07/15 Javascript
layui问题之模拟table表格中的选中按钮选中事件的方法
2019/09/20 Javascript
maptalks+three.js+vue webpack实现二维地图上贴三维模型操作
2020/08/10 Javascript
python控制台英汉汉英电子词典
2020/04/23 Python
Python脚本实现集群检测和管理功能
2015/03/06 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
2017/03/11 Python
python实现数独游戏 java简单实现数独游戏
2018/03/30 Python
python print 按逗号或空格分隔的方法
2018/05/02 Python
多个应用共存的Django配置方法
2018/05/30 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
2020/08/28 Python
python如何绘制疫情图
2020/09/16 Python
Restful_framework视图组件代码实例解析
2020/11/17 Python
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
MATCHESFASHION.COM法国官网:英国奢侈品零售商
2018/01/04 全球购物
彪马日本官网:PUMA日本
2019/01/31 全球购物
酒吧总经理岗位职责
2013/12/10 职场文书
历史专业个人求职信分享
2013/12/20 职场文书
优秀员工推荐材料
2014/12/20 职场文书
《学会看病》教学反思
2016/02/17 职场文书
汽车销售合同文本
2019/08/08 职场文书
Window server中安装Redis的超详细教程
2021/11/17 Redis
2021年国漫热度排行前十,完美世界上榜,第四是美国动画作品
2022/03/18 国漫