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开发的实用计算器完整实例
May 10 Python
Python中enumerate函数代码解析
Oct 31 Python
Python模糊查询本地文件夹去除文件后缀的实例(7行代码)
Nov 09 Python
分分钟入门python语言
Mar 20 Python
pycharm 实现显示project 选项卡的方法
Jan 17 Python
用python打印菱形的实操方法和代码
Jun 25 Python
Django中使用极验Geetest滑动验证码过程解析
Jul 31 Python
python-opencv获取二值图像轮廓及中心点坐标的代码
Aug 27 Python
详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法
Aug 30 Python
python 消费 kafka 数据教程
Dec 21 Python
TensorFlow中如何确定张量的形状实例
Jun 23 Python
Python还能这么玩之用Python做个小游戏的外挂
Jun 04 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的引用计数机制
2013/06/14 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
JavaScript通过join函数连接数组里所有元素的方法
2015/03/20 Javascript
javascript实现3D变换的立体圆圈实例
2015/08/06 Javascript
jQuery插件学习教程之SlidesJs轮播+Validation验证
2016/07/12 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
Javascript中toFixed计算错误(依赖银行家舍入法的缺陷)解决方法
2017/08/22 Javascript
React之PureComponent的使用作用
2018/07/10 Javascript
一文读懂ES7中的javascript修饰器
2019/05/06 Javascript
layui 选择列表,打勾,点击确定返回数据的例子
2019/09/02 Javascript
Nodejs + Websocket 指定发送及群聊的实现
2020/01/09 NodeJs
JS使用for in有序获取对象数据
2020/05/19 Javascript
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
Python的gevent框架的入门教程
2015/04/29 Python
python pandas消除空值和空格以及 Nan数据替换方法
2018/10/30 Python
Flask之请求钩子的实现
2018/12/23 Python
python变量的存储原理详解
2019/07/10 Python
python+adb命令实现自动刷视频脚本案例
2020/04/23 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
CSS3中的@keyframes关键帧动画的选择器绑定
2016/06/13 HTML / CSS
美国专业级皮肤病和spa品质护肤品的高级零售网站:SkinCareRx
2017/02/06 全球购物
e路東瀛(JAPANiCAN)香港:日本旅游、日本酒店和温泉旅馆预订
2018/11/21 全球购物
《天游峰的扫路人》教学反思
2014/04/25 职场文书
行政管理专业求职信
2014/07/06 职场文书
小学师德师风整改措施
2014/10/27 职场文书
2014年党建工作汇报材料
2014/10/27 职场文书
户外亲子活动总结
2015/05/08 职场文书
学前教育见习总结
2015/06/23 职场文书
百日宴上的祝酒词
2015/08/10 职场文书
在CSS中映射鼠标位置并实现通过鼠标移动控制页面元素效果(实例代码)
2021/04/22 HTML / CSS
win10+anaconda安装yolov5的方法及问题解决方案
2021/04/29 Python
python 如何用terminal输入参数
2021/05/25 Python
python全面解析接口返回数据
2022/02/12 Python
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android