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 相关文章推荐
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
Jun 18 Python
python实现去除下载电影和电视剧文件名中的多余字符的方法
Sep 23 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
Oct 09 Python
Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
Jul 18 Python
python3+selenium实现qq邮箱登陆并发送邮件功能
Jan 23 Python
Python语言检测模块langid和langdetect的使用实例
Feb 19 Python
​如何愉快地迁移到 Python 3
Apr 28 Python
解决django服务器重启端口被占用的问题
Jul 26 Python
python字符串格式化方式解析
Oct 19 Python
Python利用多线程同步锁实现多窗口订票系统(推荐)
Dec 22 Python
Python tkinter界面实现历史天气查询的示例代码
Aug 23 Python
python实现测试工具(一)——命令行发送get请求
Oct 19 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
php Calender(日历)代码分享
2014/01/03 PHP
phpfpm的作用和用法
2019/10/10 PHP
JS宝典学习笔记(下)
2007/01/10 Javascript
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
JavaScript 解析Json字符串的性能比较分析代码
2009/12/16 Javascript
jQuery bind事件使用详解
2011/05/05 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
AngularJS 表达式详解及实例代码
2016/09/14 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
jQuery Easyui Treegrid实现显示checkbox功能
2017/08/08 jQuery
vue仿element实现分页器效果
2018/09/13 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
微信小程序非跳转式组件授权登录的方法示例
2019/05/22 Javascript
[15:20]DOTA2亚洲邀请赛总决赛开幕式表演:羽泉献唱
2017/04/05 DOTA
简单的Python的curses库使用教程
2015/04/11 Python
Python标准库06之子进程 (subprocess包) 详解
2016/12/07 Python
Python 实现文件打包、上传与校验的方法
2019/02/13 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
在 Linux/Mac 下为Python函数添加超时时间的方法
2020/02/20 Python
Python计算指定日期是今年的第几天(三种方法)
2020/03/26 Python
英国最大的老式糖果店:A Quarter Of
2017/04/08 全球购物
加拿大领先的时尚和体育零售商:Sporting Life
2019/12/15 全球购物
会计专业推荐信
2013/10/29 职场文书
行政文秘岗位职责范本
2014/02/10 职场文书
母校寄语大全
2014/04/10 职场文书
捐助倡议书范文
2014/04/15 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书
个人党性分析总结
2015/03/05 职场文书
劳动仲裁代理词范文
2015/05/25 职场文书
Python 把两层列表展开平铺成一层(5种实现方式)
2021/04/07 Python
解决mysql问题:由于找不到MSVCR120.dll,无法继续执行代码
2021/06/26 MySQL
Python装饰器详细介绍
2022/03/25 Python
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫