python线程定时器Timer实现原理解析


Posted in Python onNovember 30, 2019

这篇文章主要介绍了python线程定时器Timer实现原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一.线程定时器Timer原理

原理比较简单,指定时间间隔后启动线程!适用场景:完成定时任务,例如:定时提醒-闹钟等等.

# 导入线程模块
import threading
timer = threading.Timer(interval, function, args=None, kwargs=None)

参数介绍:

interval — 定时器间隔,间隔多少秒之后启动定时器任务(单位:秒);

function — 线程函数;

args — 线程参数,可以传递元组类型数据,默认为空(缺省参数);

kwargs — 线程参数,可以传递字典类型数据,默认为空(缺省参数);

二.线程定时器使用

使用场景:定时闹钟

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
 
@File:python_timer.py
@Time:2019/10/22 21:25
 
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
 
# 导入线程模块
import threading
 
def thread_Timer():
  print("该起床啦...5秒之后再次呼叫你起床...")
 
  # 声明全局变量
  global t1
  # 创建并初始化线程
  t1 = threading.Timer(5,thread_Timer)
  # 启动线程
  t1.start()
if __name__ == "__main__":
  # 创建并初始化线程
  t1 = threading.Timer(5, thread_Timer)
  # 启动线程
  t1.start()

输出结果:

该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...
该起床啦...5秒之后再次呼叫你起床...

代码分析:

在主线程创建了线程定时器,在5秒之后执行thread_Timer线程函数,而在thread_Timer函数结束的时候,又设置了定时器线程thread_Timer,这就完成了一个递归的操作,间隔5秒重复定时任务!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python将文本中的空格替换为换行的方法
Mar 19 Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
Oct 26 Python
基于wxPython的GUI实现输入对话框(2)
Feb 27 Python
在Python中表示一个对象的方法
Jun 25 Python
python Django的web开发实例(入门)
Jul 31 Python
使用coverage统计python web项目代码覆盖率的方法详解
Aug 05 Python
python实现读取excel文件中所有sheet操作示例
Aug 09 Python
Python数据持久化存储实现方法分析
Dec 21 Python
Python通过Pillow实现图片对比
Apr 29 Python
Python ckeditor富文本编辑器代码实例解析
Jun 22 Python
Python pysnmp使用方法及代码实例
Aug 24 Python
Python OpenCV超详细讲解调整大小与图像操作的实现
Apr 02 Python
python线程信号量semaphore使用解析
Nov 30 #Python
Python一行代码解决矩阵旋转的问题
Nov 30 #Python
Numpy之将矩阵拉成向量的实例
Nov 30 #Python
numpy np.newaxis 的实用分享
Nov 30 #Python
Python如何使用函数做字典的值
Nov 30 #Python
关于Numpy中的行向量和列向量详解
Nov 30 #Python
numpy:np.newaxis 实现将行向量转换成列向量
Nov 30 #Python
You might like
PHP中基本符号及使用方法
2010/03/23 PHP
php设计模式 Composite (组合模式)
2011/06/26 PHP
php通过字符串调用函数示例
2014/03/02 PHP
PHP通过curl获取接口URL的数据方法
2018/05/31 PHP
一个简单的网站访问JS计数器 刷新1次加1次访问
2012/09/20 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
jQuery学习笔记之jQuery动画效果
2013/09/09 Javascript
jquery插件jTimer(jquery定时器)使用方法
2013/12/23 Javascript
使用JS画图之点、线、面
2015/01/12 Javascript
理解Angular数据双向绑定
2016/01/10 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
JavaScript-html标题滚动效果的简单实现
2016/09/08 Javascript
js模拟支付宝密码输入框
2017/04/11 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
解决Mac node版本升级失败的问题
2018/05/16 Javascript
JS中实现隐藏部分姓名或者电话号码的代码
2018/07/17 Javascript
微信小程序实现留言板(Storage)
2018/11/02 Javascript
[01:22:29]真视界:2019年国际邀请赛总决赛
2020/01/29 DOTA
极简的Python入门指引
2015/04/01 Python
Python的函数的一些高阶特性
2015/04/27 Python
安装dbus-python的简要教程
2015/05/05 Python
pandas修改DataFrame列名的方法
2018/04/08 Python
windows下python和pip安装教程
2018/05/25 Python
Python决策树之基于信息增益的特征选择示例
2018/06/25 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
python logging模块书写日志以及日志分割详解
2019/07/22 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
Python解析微信dat文件的方法
2020/11/30 Python
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
生日答谢词
2015/01/05 职场文书
高考学习决心书
2015/02/04 职场文书
西柏坡观后感
2015/06/08 职场文书
导游词之五台山
2019/10/11 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
导游词之四川熊猫基地
2020/01/13 职场文书
宫崎骏十大动画电影,宫崎骏好看的动画电影排名
2022/03/22 日漫