详解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用于url解码和中文解析的小脚本(python url decoder)
Aug 11 Python
Python统计日志中每个IP出现次数的方法
Jul 06 Python
Python实现的rsa加密算法详解
Jan 24 Python
利用Python如何实现数据驱动的接口自动化测试
May 11 Python
Python 支付整合开发包的实现
Jan 23 Python
python画图把时间作为横坐标的方法
Jul 07 Python
基于Tensorflow批量数据的输入实现方式
Feb 05 Python
解决python脚本中error: unrecognized arguments: True错误
Apr 20 Python
如何用python处理excel表格
Jun 09 Python
Pytorch上下采样函数--interpolate用法
Jul 07 Python
python 5个顶级异步框架推荐
Sep 09 Python
python使用yaml 管理selenium元素的示例
Dec 01 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获取服务器信息的实现代码
2013/02/04 PHP
PHP实现获取图片颜色值的方法
2014/07/11 PHP
PHP之图片上传类实例代码(加了缩略图)
2016/06/30 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
2016/11/20 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
PHP通过get方法获得form表单数据方法总结
2018/09/12 PHP
Json对象替换字符串占位符实现代码
2010/11/17 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
2013/01/23 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
jquery 实现两Select 标签项互调示例代码
2014/09/25 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
canvas绘制七巧板
2017/02/03 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
2017/12/12 Javascript
three.js实现3D模型展示的示例代码
2017/12/31 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
关于vue表单提交防双/多击的例子
2019/10/31 Javascript
微信小程序接入腾讯云验证码的方法步骤
2020/01/07 Javascript
Vue中父子组件的值传递与方法传递
2020/09/28 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
利用Python生成文件md5校验值函数的方法
2017/01/10 Python
解决Python3中的中文字符编码的问题
2018/07/18 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
将 Ubuntu 16 和 18 上的 python 升级到最新 python3.8 的方法教程
2020/03/11 Python
Python实现画图软件功能方法详解
2020/07/28 Python
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
商场经理竞聘演讲稿
2014/01/01 职场文书
授权委托书样本
2014/04/03 职场文书
三严三实对照检查材料
2014/09/22 职场文书
负责培养人意见
2015/06/05 职场文书
秋季运动会加油词
2015/07/18 职场文书
创业计划书之花店
2019/09/20 职场文书
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers
Python OpenCV超详细讲解基本功能
2022/04/02 Python