详解Python3定时器任务代码
作者:撒欢 发布时间:2023-10-15 14:50:26
标签:python,定时器
使用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定时器任务代码,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://www.cnblogs.com/frisk/p/11568264.html


猜你喜欢
- 在你的 Django 应用中,你或许希望根据某字段的值对检索结果排序,比如说,按字母顺序。 那么,使用 order_by() 这个方法就可以
- 在学MVC过程中,我们一般都是利用layui插件里的layui数据表格加载数据库中的数据,而layui表格里有许多的事件监听,比如监听行的单
- //Paul Tero, July 2001 //http://www.tero.co.uk/des/ // //Optimised for
- 为了方便例子讲解,现有数组和json对象如下var demoArr = ['Javascript', 'Gulp
- 一、前言今天要介绍的 click 则是用一种你很熟知的方式来玩转命令行。命令行程序本质上是定义参数和处理参数,而处理参数的逻辑一定是与所定义
- 先简单做个分享,有时间再补一个完整的用例self.textEdit = QtGui.QTextEdit(slef)1.设置背景颜色self.
- 在Windows系统下,如何在cmd中输入命令来运行.py文件呢?一. 设置环境变量想要在cmd中运行python文件,必须要设置pytho
- 在IDLE下清屏:#网上有些先定义函数,再?print("\n" * 100)输出一百个换行的方法有点扯淡,跟连按回车没
- 1.查询表名: 代码如下:select table_name,tablespace_name,temporary from user_tab
- MySQL根据配置文件会限制Server接受的数据包大小。有时候大的插入和更新会受 max_allowed_packet 参数限制,导致写入
- SQL Server数据库用视图来处理复杂的数据查询关系是本文我们主要要介绍的内容,该内容是这样想到的:在辅助教务系统那块的时候,我做的一个
- 一个表单焦点效果javascript函数,可以用在美化表单界面,挺好看的。function validForms(){  
- Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,
- 目录MYSQL METADATA LOCK(MDL LOCK)学习 理论知识和加锁类型测试 一、初步了解二、基础重要的数据结构(类
- 1 Video介绍引用我翻译文档《在HTML5页面中嵌入音频和视频》中的介绍文字:“当今,在网页上嵌入视频且所有用户不管使用任何浏览器或者操
- 之前在做数据分析的过程中,需要对数据进行实时的写入,比如对新生成的数据写入之前已经生成的txt或csv文件中。现在想想其实很简单,所以做一个
- Tkinter复选框Checkbutton是否被选中判断定义一个BooleanVar型数据进行获取复选框状态。>>> im
- 条形图是用宽度相同的条形的高度或长短来表示数据多少的图形。用来绘制离散的数据,能够一眼看出各个数据的大小,比较数据之间的差异。绘制一个简单的
- 1、方法一在使用多线程更新 MongoDB 数据时,需要注意以下几个方面:确认您的数据库驱动程序是否支持多线程。在 PyMongo 中,默认
- 本文介绍了Python中Selenium模拟JQuery滑动解锁实例,分享给大家,也给自己留个笔记滑动解锁一直做UI自动化的难点之一,我补一