没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本人在做项目的时候遇到一个问题: 某个函数需要在每个小时的 3 分钟时候被执行一次,我希望我 15:45 启动程序,过了18 分钟在 16:03 这个函数被执行一次,下一次过 60 分钟在 17:03 再次被执行,下一次 18:03,以此类推。 以下是我基于 Timer 做的再封装实现了此功能。 # -*- coding: utf-8 -*- # ================================================== # 对 Timer 做以下再封装的目的是:当某个功能需要每隔一段时间被 # 执行一次的时候,不需要在回调函数里对 Timer 做重新安装启动 #
资源推荐
资源详情
资源评论
Python 实现某个功能每隔一段时间被执行一次的功能方法实现某个功能每隔一段时间被执行一次的功能方法
本人在做项目的时候遇到一个问题:本人在做项目的时候遇到一个问题:
某个函数需要在每个小时的 3 分钟时候被执行一次,我希望我 15:45 启动程序,过了18 分钟在 16:03 这个函数被执行一
次,下一次过 60 分钟在 17:03 再次被执行,下一次 18:03,以此类推。
以下是我基于 Timer 做的再封装实现了此功能。
# -*- coding: utf-8 -*-
# ==================================================
# 对 Timer 做以下再封装的目的是:当某个功能需要每隔一段时间被
# 执行一次的时候,不需要在回调函数里对 Timer 做重新安装启动
# ==================================================
__author__ = 'liujiaxing'
from threading import Timer
from datetime import datetime
class MyTimer( object ):
def __init__( self, start_time, interval, callback_proc, args=None, kwargs=None ):
self.__timer = None
self.__start_time = start_time
self.__interval = interval
self.__callback_pro = callback_proc
self.__args = args if args is not None else [] self.__kwargs = kwargs if kwargs is not None else {}
def exec_callback( self, args=None, kwargs=None ):
self.__callback_pro( *self.__args, **self.__kwargs )
self.__timer = Timer( self.__interval, self.exec_callback )
self.__timer.start()
def start( self ):
interval = self.__interval - ( datetime.now().timestamp() - self.__start_time.timestamp() )
print( interval )
self.__timer = Timer( interval, self.exec_callback )
self.__timer.start()
def cancel( self ):
self.__timer.cancel()
self.__timer = None
class AA:
def hello( self, name, age ):
print( "[%s] hello %s: %d" % ( datetime.now().strftime("%Y%m%d %H:%M:%S"), name, age ) )
if __name__ == "__main__":
aa = AA()
start = datetime.now().replace( minute=3, second=0, microsecond=0 )
tmr = MyTimer( start, 60*60, aa.hello, [ "owenliu", 18 ] )
tmr.start()
tmr.cancel()
以上这篇Python 实现某个功能每隔一段时间被执行一次的功能方法就是小编分享给大家的全部内容了,希望能给大家一个参
考,也希望大家多多支持软件开发网。
您可能感兴趣的文章您可能感兴趣的文章:python每隔N秒运行指定函数的方法Python函数的周期性执行实现方法Python3中常用的处理时间和实现
定时任务的方法的介绍python运行时间的几种方法
资源评论
weixin_38703669
- 粉丝: 8
- 资源: 878
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功