美文网首页
python3定时器

python3定时器

作者: 为瞬间停留 | 来源:发表于2020-07-23 15:54 被阅读0次

在实际应用中,我们经常需要使用定时器去触发一些事件。Python中通过线程实现定时器timer,其使用非常简单。看示例:

import threading
 
def fun_timer():
    print('Hello Timer!')
 
timer = threading.Timer(1, fun_timer)
timer.start()

一秒后输出Hello Timer!
oneshot的定时器这样就可以实现。

如果要实现cycle的定时器,则可以:

import threading
timer = 0
def fun_timer():
    print('Hello Timer!')
    global timer
    timer = threading.Timer(5.5, fun_timer)
    timer.start()
 
timer = threading.Timer(1, fun_timer)
timer.start()

1s后定时器启动后,将再次以5.5s为间隔周期性执行回调fun_timer函数
结果是:

Hello Timer!
Hello Timer!
Hello Timer!
Hello Timer!
Hello Timer!
Hello Timer!
Hello Timer!
Hello Timer!

在使用Python定时器时需要注意:
1.定时器构造函数主要有2个参数,第一个参数为时间,第二个参数为函数名,第一个参数表示多长时间后调用后面第二个参数指明的函数。第二个参数注意是函数对象,进行参数传递,用函数名(如fun_timer)表示该对象,不能写成函数执行语句fun_timer(),不然会报错。
2.定时器间隔单位是秒,可以是浮点数,如5.5,0.02等,在执行函数fun_timer内部和外部中给的值可以不同。如上例中第一次执行fun_timer是1秒后,后面的都是5.5秒后执行。
3.可以使用cancel停止定时器的工作

    # -*- coding: utf-8 -*-
    import threading
    import time
    def fun_timer():
        print('Hello Timer!')
        global timer
        timer = threading.Timer(5.5, fun_timer)
        timer.start()
     
    timer = threading.Timer(1, fun_timer)
    timer.start()
     
    time.sleep(15) # 15秒后停止定时器
    timer.cancel()

相关文章

  • python3定时器

    在实际应用中,我们经常需要使用定时器去触发一些事件。Python中通过线程实现定时器timer,其使用非常简单。看...

  • python3 定时器

  • 2017.12.21学习总结

    下午学习了定时器,定时器分为高级定时器、通用定时器和基本定时器,我们主要研究通用定时器。 定时器中断实现步骤:...

  • javascript笔记6

    定时器-间歇性定时器 定时器-延时定时器 认识DOM 间歇性定时器var time = window.setInt...

  • 定时器弹框、定时器基本用法、定时器动画、时钟

    定时器弹框: 定时器基本用法: 定时器动画: 时钟:

  • 无标题文章

    iOS NSTimer使用详解-开启、关闭、移除 定时器定时器详解ios定时器关闭定时器NSTimer 1、要使用...

  • 定时器

    1.倒计定时器(setTimeout) clearTimeout清除定时器2.循环定时器(setInterval)...

  • 第十三节 JavaScript 定时器 单线程

    一、定时器 1. JS存在两种定时器 setTimeout() 延迟定时器 setInterval() ...

  • 定时器 - OC

    定时器的定义 创建一个定时器并启动这个定时器 停止定时器 后续了解:NSTimer invalidate不起作用h...

  • 定时器 类型转换 封闭函数

    定时器定时器在javascript中的作用1、制作动画2、异步操作3、函数缓冲与节流 定时器类型及语法 /*定时器...

网友评论

      本文标题:python3定时器

      本文链接:https://www.haomeiwen.com/subject/tejhlktx.html