python实现异步回调机制代码分享


Posted in Python onJanuary 10, 2014

1 将下面代码拷贝到一个文件,命名为asyncore.py

import socket
import select
import sys
def ds_asyncore(addr,callback,timeout=5):
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.connect(addr)
    r,w,e = select.select([s],[],[],timeout)
    if r:
        respose_data=s.recv(1024)
        callback(respose_data)
        s.close()
        return 0
    else:
        s.close()
        return 1

2 编写自己的代码

1> 导入asyncore

2> 定义回调函数callback,callback需要一个参数,代表请求返回数据

3> 直接调用asyncore.ds_asyncore(('127.0.0.1', 33333),callback,timeout=5),其中第一个参数是一个(ip,port)元组,第二个是回调函数,第三个是超时时间。

import asyncore
if __name__=="__main__":
    def callback(respose_data):
        print respose_data
    asyncore.ds_asyncore(('127.0.0.1', 33333),callback,timeout=5)
Python 相关文章推荐
Django中URLconf和include()的协同工作方法
Jul 20 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
Python3.5内置模块之time与datetime模块用法实例分析
Apr 27 Python
python实现海螺图片的方法示例
May 12 Python
pytorch 状态字典:state_dict使用详解
Jan 17 Python
Python内置类型性能分析过程实例
Jan 29 Python
python计算波峰波谷值的方法(极值点)
Feb 18 Python
Python文字截图识别OCR工具实例解析
Mar 05 Python
在django中实现choices字段获取对应字段值
Jul 12 Python
Python读取Excel一列并计算所有对象出现次数的方法
Sep 04 Python
Python Tkinter实例——模拟掷骰子
Oct 24 Python
Python3.9.1中使用split()的处理方法(推荐)
Feb 07 Python
python3使用tkinter实现ui界面简单实例
Jan 10 #Python
python构造icmp echo请求和实现网络探测器功能代码分享
Jan 10 #Python
python中mechanize库的简单使用示例
Jan 10 #Python
python使用新浪微博api上传图片到微博示例
Jan 10 #Python
python发腾讯微博代码分享
Jan 10 #Python
python实现2014火车票查询代码分享
Jan 10 #Python
python抓取豆瓣图片并自动保存示例学习
Jan 10 #Python
You might like
CakePHP去除默认显示的标题及图标的方法
2008/10/22 PHP
php三种实现多线程类似的方法
2015/10/30 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
2020/03/23 PHP
javascript replace()正则替换实现代码
2010/02/26 Javascript
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
javascript重写alert方法的实例代码
2013/03/29 Javascript
JS循环遍历JSON数据的方法
2014/07/08 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
2015/03/23 Javascript
javascript实现自动填写表单实例简析
2015/12/02 Javascript
JS设置下拉列表框当前所选值的方法
2015/12/22 Javascript
Bootstrap4一次重大更新 几乎涉及每行代码
2016/05/16 Javascript
jQuery each函数源码分析
2016/05/25 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
巧用canvas
2017/01/21 Javascript
js实现彩色条纹滚动条效果
2017/03/15 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
ES6 javascript中Class类继承用法实例详解
2017/10/30 Javascript
jQuery实现当拉动滚动条到底部加载数据的方法分析
2019/01/24 jQuery
vue实现的下拉框功能示例
2019/01/29 Javascript
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
python之import机制详解
2014/07/03 Python
Python随机生成一个6位的验证码代码分享
2015/03/24 Python
使用IPython来操作Docker容器的入门指引
2015/04/08 Python
Python输出PowerPoint(ppt)文件中全部文字信息的方法
2015/04/28 Python
Python中的条件判断语句基础学习教程
2016/02/07 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
Django 跨域请求处理的示例代码
2018/05/02 Python
python监控文件并且发送告警邮件
2018/06/21 Python
centos6.8安装python3.7无法import _ssl的解决方法
2018/09/17 Python
Python实现迪杰斯特拉算法过程解析
2020/09/18 Python
Groupon法国官方网站:特卖和网上购物高达-70%
2019/09/02 全球购物
精致的手工皮鞋:Shoe Embassy
2019/11/08 全球购物
网络编辑求职信
2014/04/30 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python