python中实现延时回调普通函数示例代码


Posted in Python onSeptember 08, 2017

前言

回调函数是我们在python编程中经常会遇到的一个问题,而想在将来某一时刻进行函数回调,可以使用call_later()函数来实现,第一个参数是回调用延时,第二个是回调的函数名称

例子如下:

import asyncio 
 
 
def callback(n): 
 print('callback {} invoked'.format(n)) 
 
 
async def main(loop): 
 print('registering callbacks') 
 loop.call_later(0.2, callback, 1) 
 loop.call_later(0.1, callback, 2) 
 loop.call_soon(callback, 3) 
 
 await asyncio.sleep(0.4) 
 
 
event_loop = asyncio.get_event_loop() 
try: 
 print('entering event loop') 
 event_loop.run_until_complete(main(event_loop)) 
finally: 
 print('closing event loop') 
 event_loop.close()

结果输出如下:

entering event loop
registering callbacks
callback 3 invoked
callback 2 invoked
callback 1 invoked
closing event loop

在这个例子里,同时调用的三个函数,会发现调用顺序不一样。call_soon()是注册之后立即调用。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python编码类型转换方法详解
Jul 01 Python
详解python里使用正则表达式的全匹配功能
Oct 19 Python
python3 读写文件换行符的方法
Apr 09 Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
May 26 Python
CentOS 7 安装python3.7.1的方法及注意事项
Nov 01 Python
Python 获取主机ip与hostname的方法
Dec 17 Python
django项目用higcharts统计最近七天文章点击量
Aug 17 Python
python config文件的读写操作示例
Sep 27 Python
Python 日志logging模块用法简单示例
Oct 18 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
Jan 06 Python
Python django框架 web端视频加密的实例详解
Nov 20 Python
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
Jun 08 Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 #Python
老生常谈Python startswith()函数与endswith函数
Sep 08 #Python
python学习必备知识汇总
Sep 08 #Python
分享一下如何编写高效且优雅的 Python 代码
Sep 07 #Python
python 函数传参之传值还是传引用的分析
Sep 07 #Python
windows下python之mysqldb模块安装方法
Sep 07 #Python
python 全局变量的import机制介绍
Sep 07 #Python
You might like
PHP安装问题
2006/10/09 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
探讨PHP删除文件夹的三种方法
2013/06/09 PHP
PHP中4个加速、缓存扩展的区别和选用建议
2014/03/12 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
php+jQuery+Ajax简单实现页面异步刷新
2016/08/08 PHP
PHP面向对象学习之parent::关键字
2017/01/18 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
JS控制表格隔行变色
2006/06/26 Javascript
javascript之可拖动的iframe效果代码
2008/08/01 Javascript
JS解决url传值出现中文乱码的另类办法
2013/04/08 Javascript
JavaScript中访问节点对象的方法有哪些如何使用
2013/09/24 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
JavaScript事件处理的方式(三种)
2016/04/26 Javascript
vue2.0数据双向绑定与表单bootstrap+vue组件
2017/02/27 Javascript
关于Node.js的events.EventEmitter用法介绍
2017/04/01 Javascript
使用 Javascript 实现浏览器推送提醒功能的示例
2017/11/03 Javascript
Vue递归实现树形菜单方法实例
2018/11/06 Javascript
js简单遍历获取对象中的属性值的方法示例
2019/06/19 Javascript
Python中的多重装饰器
2015/04/11 Python
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
简介二分查找算法与相关的Python实现示例
2015/08/26 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
Python下使用Trackbar实现绘图板
2020/10/27 Python
茵宝(Umbro)英国官方商店:英国足球服装生产商
2016/12/29 全球购物
英国领先的在线高尔夫商店:Gamola Golf
2019/11/16 全球购物
入党积极分子评语
2014/05/04 职场文书
物业管理委托协议(2篇)
2014/09/23 职场文书
2015年学习部工作总结范文
2015/03/31 职场文书
会议通知范文
2015/04/15 职场文书
毕业实习证明范本
2015/06/16 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书
各类场合主持词开场白范文集锦
2019/08/16 职场文书
java项目构建Gradle的使用教程
2022/03/24 Java/Android