python回调函数用法实例分析


Posted in Python onMay 09, 2015

本文实例讲述了python回调函数用法。分享给大家供大家参考。具体分析如下:

软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕 才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它 的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回调和异步调用的关系非常紧密,通常我们使用 回调来实现异步消息的注册,通过异步调用来实现消息的通知。同步调用是三者当中最简单的,而回调又常常是异步调用的基础,因此,这里我们着重讨论回调机制 在不同软件架构中的实现。

#call.py
import called
def callback():
  print "in callback"
def main():
  #called.test()
  called.test_call(callback)
  print "in call.py" 
main()

#called.py
'''''
def test():
  print "in called.py test()"
'''
def test_call(p_call):
  print "in called.py test_call()"
  p_call()

joe@joe:~/test/python$ python call.py
in called.py test_call()
in callback
in call.py
joe@joe:~/test/python$

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python有证书的加密解密实现方法
Nov 19 Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
Dec 15 Python
django基础之数据库操作方法(详解)
May 24 Python
详谈Pandas中iloc和loc以及ix的区别
Jun 08 Python
Python设计模式之原型模式实例详解
Jan 18 Python
基于python二叉树的构造和打印例子
Aug 09 Python
wxPython多个窗口的基本结构
Nov 19 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
Dec 12 Python
Django中modelform组件实例用法总结
Feb 10 Python
Python 解析pymysql模块操作数据库的方法
Feb 18 Python
Django数据库操作之save与update的使用
Apr 01 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
Jul 03 Python
python类和函数中使用静态变量的方法
May 09 #Python
Python实用日期时间处理方法汇总
May 09 #Python
python fabric使用笔记
May 09 #Python
Python字符串详细介绍
May 09 #Python
Python urllib、urllib2、httplib抓取网页代码实例
May 09 #Python
python MySQLdb Windows下安装教程及问题解决方法
May 09 #Python
Python MySQLdb Linux下安装笔记
May 09 #Python
You might like
防止本地用户用fsockopen DDOS攻击对策
2011/11/02 PHP
PHP 自定义错误处理函数trigger_error()
2013/03/26 PHP
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
PHP中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
PHP获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
php异步多线程swoole用法实例
2014/11/14 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
2017/04/07 PHP
PHP并发场景的三种解决方案代码实例
2021/02/27 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
日期 时间js控件
2009/05/07 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
jsPDF导出pdf示例
2014/05/02 Javascript
Javascript定义类(class)的三种方法详解
2015/03/13 Javascript
Vue cli+mui 区域滚动的实例代码
2018/01/25 Javascript
解决vue数组中对象属性变化页面不渲染问题
2018/08/09 Javascript
vue+VeeValidate 校验范围实例详解(部分校验,全部校验)
2018/10/19 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
ES6 对象的新功能与解构赋值介绍
2019/02/05 Javascript
简单实现vue中的依赖收集与响应的方法
2019/02/18 Javascript
vue路由教程之静态路由
2019/09/03 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
Python中3种内建数据结构:列表、元组和字典
2014/11/30 Python
python中的全局变量用法分析
2015/06/09 Python
python实现画一颗树和一片森林
2018/06/25 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
python 堆和优先队列的使用详解
2019/03/05 Python
灵活运用CSS3特性绘制简易版围棋效果
2016/09/28 HTML / CSS
C++面试题目
2013/06/25 面试题
电子信息工程专业自荐书
2014/06/24 职场文书
教师优秀党员事迹材料
2014/08/14 职场文书
民族团结好少年事迹材料
2014/08/19 职场文书
小学学习委员竞选稿
2015/11/20 职场文书
幼儿体育课教学反思
2016/02/16 职场文书
js基于div丝滑实现贝塞尔曲线
2022/09/23 Javascript