首页 > 编程语言 >python内置定时任务

python内置定时任务

时间:2023-09-08 17:12:55浏览次数:46  
标签:task run python self datetime 内置 import 定时 def

目录

python内置定时任务

while True + sleep

import datetime


def task_run(*args, **kwargs):
    print(f"耗时操作....{datetime.datetime.now().strftime('%Y%m%d_%H:%M:%S')}")
    
def cron_and_sleep():
    '''
    while True + sleep
    :return:
    '''
    while True:
        task_run()  # 执行的任务
        time.sleep(3)

image


Timeloop

import datetime
from timeloop import Timeloop

def task_run(*args, **kwargs):
    print(f"耗时操作....{datetime.datetime.now().strftime('%Y%m%d_%H:%M:%S')}")

def cron_and_timeloop():
    '''
    Timeloop
    :return:
    '''
    t = Timeloop()
    t._add_job(task_run, datetime.timedelta(seconds=3), (1,))
    t.start(block=True)

image


Timer

import datetime
from threading import Timer


def task_run(*args, **kwargs):
    print(f"耗时操作....{datetime.datetime.now().strftime('%Y%m%d_%H:%M:%S')}")


class CronTimer(Timer):
    def run(self):
        while not self.finished.is_set():
            self.function(*self.args, **self.kwargs)
            self.finished.wait(self.interval)
            

def cron_and_timer():
    '''
    timer
    threading模块提供了一个定时器触发的函数Timer是一个非阻塞函数  任务执行一次 需要使用循环保证在特定时间间隔调用
    :return:
    '''
    t = CronTimer(3, task_run, (1,))
    t.start()
    # t.cancel()  # 停止还在运行的任务

image


sched

import sched
import time
import datetime

def cron_and_sched():
    s = sched.scheduler(time.time, time.sleep)
    
    def task(*args, **kwargs):
        """任务"""
        try:
            print(f"耗时操作....{datetime.datetime.now().strftime('%Y%m%d_%H:%M:%S')}")
        finally:
            s.enter(3, 1, task, (1, ))

    s.enter(3, 1, task, (1,))
    s.run()

image


标签:task,run,python,self,datetime,内置,import,定时,def
From: https://www.cnblogs.com/fsh19991001/p/17688076.html

相关文章

  • 在线问诊 Python、FastAPI、Neo4j — 创建节点
    目录前提条件创建节点Demo准备数据在线问诊Python、FastAPI、Neo4j—创建节点Neo4j节点的标签可以理解为Java中的实体。根据常规流程:首先有什么症状,做哪些对应的检查,根据检查诊断什么疾病,需要用什么药物治疗,服药期间要注意哪些饮食,需要做哪些运行在线问诊大概创建:症状......
  • spring 实现定时任务(手动配置,不用注解)
    1.情景展示在java当中实现定时任务,主要有两种。一种是通过java源码实现,另一种是通过spring框架来实现。由于我们现在基本上使用的都是spring框架(SpringMVC、SpringBoot),况且,使用spring实现定时任务,代码更加简洁。那么,如何是想spring来实现呢?2.具体分析使用spring实现,具体有......
  • Python中的异常处理机制
    finally语句是Python中异常处理机制的一部分,它总是会被执行,无论是否发生异常。finally语句通常用于释放资源或执行清理操作。下面是一个简单的例子:try:#代码段1passexceptExceptionType:#代码段2passelse:#代码段3passfinally:#代码段4......
  • python查看变量类型
    在python中有两种方式来查看变量类型,一种是直接使用tpye(object)函数直接输出变量类型,另一种是使用isinstance(x,A_tuple)来判断变量是否属于某一类型,输出结果为True,则属于该类型,反之则不属于。type(object):使用type(object)函数查看数据的类型;alist=[1,2,3,4,5]print(......
  • python flask有像Spring AOP一样 捕获记录操作过程请求和返回
    在PythonFlask中,你可以使用装饰器(decorators)或中间件(middlewares)来实现类似SpringAOP的日志记录功能,以捕获和记录操作过程的请求和返回。一种常见的方法是使用装饰器来包装路由处理函数,在函数执行前后记录相关信息:```pythonfromfunctoolsimportwrapsfromflaskimport......
  • python3 postgreSQL 依赖问题
    unabletoexecute'gcc':NosuchfileordirectoryItappearsyouaremissingsomeprerequisitetobuildthepackagefromsource.Youmayinstallabinarypackagebyinstalling'psycopg2-binary'fromPyPI.Ifyouwantto......
  • 纯java 实现定时任务的两种方式
    1.情景展示在实际项目开发过程中,往往会存在这样的需求:定时执行某个任务,如何实现?2.具体分析定时任务,其实就是定时调用。在代码中,我们可以通过定时运行某个类的某个方法来实现。具体实现方式,有两种:一种是通过java实现。另一种是借助spring来实现。本文只说java实现方式。......
  • Python 网页爬虫原理及代理 IP 使用
    一、Python网页爬虫原理Python是一种高效的编程语言,在Web开发和数据分析领域广受欢迎。Python的优秀模块使其更加适合大规模数据处理和Web服务的编程。网络爬虫是Python开发者最常用的工具之一。网络爬虫(WebCrawler)是一种自动化程序,可以模拟人类浏览器的行为,自动在互联网......
  • 43道Python经典案例题(有答案)
    1.有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?forxinrange(0,5):foryinrange(0,5):forzinrange(0,5):ifx!=yandy!=zandz!=x:print(x,y,z)复制2.题目:企业发放的奖金根据利润提成......
  • Python 框架(Flask,tornado,fastAPI)Go 的gin框架 Java spring 框架中的性能对比
    使用jmeter进行压测:配置如下: Flask框架:Python代码:fromflaskimportFlaskapp=Flask(__name__)@app.route('/')defhello_world():return'Hello,World!'if__name__=='__main__':app.run(port=8080)测试结果: Tornado......