详解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基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
Django 根据数据模型models创建数据表的实例
May 27 Python
python 实现A*算法的示例代码
Aug 13 Python
python 实现UTC时间加减的方法
Dec 31 Python
Django中多种重定向方法使用详解
Jul 17 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
python实现倒计时小工具
Jul 29 Python
解决numpy矩阵相减出现的负值自动转正值的问题
Jun 03 Python
Python中的面向接口编程示例详解
Jan 17 Python
一个入门级python爬虫教程详解
Jan 27 Python
python Tkinter的简单入门教程
Apr 11 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原创论坛
2006/10/09 PHP
php字符串截取的简单方法
2013/07/04 PHP
php while循环得到循环次数
2013/10/26 PHP
必须收藏的23个php实用代码片段
2016/02/02 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
2018/12/20 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
深入理解JavaScript系列(45):代码复用模式(避免篇)详解
2015/03/04 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
2016/01/05 Javascript
在JavaScript中call()与apply()区别
2016/01/22 Javascript
JS模仿手机端九宫格登录功能实现代码
2016/04/28 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
2017/03/09 Javascript
ligerUI---ListBox(列表框可移动的实例)
2017/11/28 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
Python调用系统底层API播放wav文件的方法
2017/08/11 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
2019/02/20 Python
为什么你还不懂得怎么使用Python协程
2019/05/13 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
在python中利用dict转json按输入顺序输出内容方式
2020/02/27 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
详解Pycharm与anaconda安装配置指南
2020/08/25 Python
css和css3弹性盒模型实现元素宽度(高度)自适应
2019/05/15 HTML / CSS
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
仓库班组长岗位职责
2013/12/12 职场文书
优秀毕业生推荐信范文
2014/03/07 职场文书
学校门卫岗位职责范本
2014/06/30 职场文书
法英专业大学生职业生涯规划范文:衡外情,量己力!
2014/09/23 职场文书
教师党员个人总结
2015/02/10 职场文书
2017新年晚会开幕词
2016/03/03 职场文书
Python WSGI 规范简介
2021/04/11 Python
我的收音机情缘
2022/04/05 无线电
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers