详解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使用matplotlib实现绘制自定义图形功能示例
Jan 18 Python
pandas数据预处理之dataframe的groupby操作方法
Apr 13 Python
python3 读取Excel表格中的数据
Oct 16 Python
python根据list重命名文件夹里的所有文件实例
Oct 25 Python
Python寻找两个有序数组的中位数实例详解
Dec 05 Python
Python Matplotlib库安装与基本作图示例
Jan 09 Python
用python3 返回鼠标位置的实现方法(带界面)
Jul 05 Python
Python监控服务器实用工具psutil使用解析
Dec 19 Python
python随机模块random使用方法详解
Feb 14 Python
Python制作一个仿QQ办公版的图形登录界面
Sep 22 Python
python实现图片转字符画
Feb 19 Python
python自动化调用百度api解决验证码
Apr 13 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 文件上传代码(限制jpg文件)
2010/01/05 PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
2010/04/12 PHP
php cookie名使用点号(句号)会被转换
2014/10/23 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
js png图片(有含有透明)在IE6中为什么不透明了
2010/02/07 Javascript
类似GMAIL的Ajax信息反馈显示
2010/02/16 Javascript
js+xml生成级联下拉框代码
2012/07/24 Javascript
js制作带有遮罩弹出层实现登录注册表单特效代码分享
2015/09/05 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
vue动态生成dom并且自动绑定事件
2017/04/19 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
获取layer.open弹出层的返回值方法
2018/08/20 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
JavaScript中break、continue和return的用法区别实例分析
2020/03/02 Javascript
原生JS实现留言板
2020/03/26 Javascript
详解微信小程序工程化探索之webpack实战
2020/04/20 Javascript
微信小程序接入vant Weapp组件的详细步骤
2020/10/28 Javascript
[36:14]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第二局
2016/02/28 DOTA
[54:17]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第二场 1月10日
2021/03/11 DOTA
python dict remove数组删除(del,pop)
2013/03/24 Python
简单理解Python中基于生成器的状态机
2015/04/13 Python
详解python里使用正则表达式的分组命名方式
2017/10/24 Python
Python基于dom操作xml数据的方法示例
2018/05/12 Python
浅谈pytorch和Numpy的区别以及相互转换方法
2018/07/26 Python
Python使用dict.fromkeys()快速生成一个字典示例
2019/04/24 Python
美国首屈一指的礼品篮供应商:GiftTree
2018/01/06 全球购物
世界上最大的乐谱选择:Sheet Music Plus
2020/01/18 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
写给老师的表扬信
2014/01/21 职场文书
会计电算化大学生职业规划书
2014/02/05 职场文书
先进人物事迹材料
2014/12/29 职场文书
同意离婚答辩状
2015/05/22 职场文书
入党积极分子党小组意见
2015/06/02 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
高中生社会实践心得体会
2016/01/14 职场文书