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中利用sqrt()方法进行平方根计算的教程
May 15 Python
将Python代码打包为jar软件的简单方法
Aug 04 Python
深入理解Django中内置的用户认证
Oct 06 Python
使用Python操作excel文件的实例代码
Oct 15 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
Dec 05 Python
python2.7实现邮件发送功能
Dec 12 Python
python 杀死自身进程的实现方法
Jul 01 Python
用Python实现BP神经网络(附代码)
Jul 10 Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
Aug 09 Python
如何使用python3获取当前路径及os.path.dirname的使用
Dec 13 Python
django Model层常用验证器及自定义验证器详解
Jul 15 Python
基于python实现坦克大战游戏
Oct 27 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 使用pcntl和libevent 实现Timer功能
2013/10/27 PHP
关于PHP的curl开启问题探讨
2014/04/08 PHP
PHP可变函数学习小结
2015/11/29 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
laravel 实现根据字段不同值做不同查询
2019/10/23 PHP
jqTransform form表单美化插件使用方法
2012/07/05 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
javascript alert乱码的解决方法
2013/11/05 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
基于jquery的simpleValidate简易验证插件
2014/01/31 Javascript
iframe父页面获取子页面参数的方法
2014/02/21 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
jQuery Ajax使用实例
2015/04/16 Javascript
全站最详细的Vuex教程
2018/04/13 Javascript
JavaScript事件发布/订阅模式原理与用法分析
2018/08/21 Javascript
JavaScript设计模式之装饰者模式实例详解
2019/01/17 Javascript
layui表格 列自动适应大小失效的解决方法
2019/09/06 Javascript
python rsa 加密解密
2017/03/20 Python
python修改txt文件中的某一项方法
2018/12/29 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
python实现删除列表中某个元素的3种方法
2020/01/15 Python
python实现贪吃蛇游戏源码
2020/03/21 Python
CSS3属性background-size使用指南
2014/12/09 HTML / CSS
HTML 5 标签、属性、事件及浏览器兼容性速查表 附打包下载
2012/10/20 HTML / CSS
暑假实习求职信范文
2013/09/22 职场文书
文秘应聘自荐书范文
2014/02/18 职场文书
如何写自我鉴定
2014/03/19 职场文书
经费申请报告
2015/05/15 职场文书
大学生村官入党自传
2015/06/26 职场文书
全国劳模先进事迹材料(2016精选版)
2016/02/25 职场文书
2019中秋节祝福语大全,提前收藏啦
2019/09/10 职场文书
Laravel中获取IP的真实地理位置
2021/04/01 PHP
教你怎么用PyCharm为同一服务器配置多个python解释器
2021/05/31 Python
Golang 语言控制并发 Goroutine的方法
2021/06/30 Golang
html5表单的required属性使用
2021/07/07 HTML / CSS
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL