跨平台python异步回调机制实现和使用方法
发布时间:2021-12-18 23:33:26
标签:python,异步回调,跨平台
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)
注:此代码可在windows,linux上运行


猜你喜欢
- XML和XSLT的转换使Web设计受益无穷。借助XML和 XSLT转换,你可以实现将动态用语(dynamic verbiage)和网站内容存
- SQL(结构化查询语言)就是负责与ANSI维护的数据库交互的标准。最新的版本是SQL-99,还有一个新标准SQL-200n尚处于制定过程中。
- 问题在使用MySQL数据库的时候,经常会遇到这么一个问题,就是“Can not connect to MySQL server. Too m
- 一、使用等号查询可以像普通查询使用等号进行查询,但必须查询时间必须和字段对应时间完全相等,比如我要查下面这个值sql如下:SELECT id
- 像这种不能创建一个.frm 文件的报错好像暗示着操作系统的文件的权限错误或者其它原因,但实际上,这些都不是的,事实上,这个mysql报错已经
- 先给大家快捷总结:文件格式Python库文本文件内置open函数CSV文件csvJSON文件jsonXML文件xml.etree.Eleme
- 授权就是为某个用户赋予某些权限。例如,可以为新建的用户赋予查询所有数据库和表的权限。MySQL 提供了 GRANT 语句来为用户设置权限。在
- (一)前言众所周知,Navicat是我们常用的连接MYSQL工具,非常方便好用。其实日常中,我们也常常会遇到运行时间很长甚至几乎跑不完卡死的
- 之前一直有过疑惑为什么MySQL数据库存timestamp可以无视时区问题.在业务中也是一直使用Laravel框架,内置的Migration
- 本文实例讲述了Python实现的随机森林算法。分享给大家供大家参考,具体如下:随机森林是数据挖掘中非常常用的分类预测算法,以分类或回归的决策
- 在我们开始一个项目的设计的时候,脑子里肯定有无数的构想。是做视觉冲击强烈、夺人眼球的绚丽风格?还是复古的拼贴风?又或者目前最in的极简主义设
- 本文中,我将尝试展示用Docker开发python应用(主要是Web应用)的可行方法。虽然我本人专注于Python的Flask微框架,但本文
- 生成一列sum_age 对age 进行累加df['sum_age'] = df['age'].cumsum(
- 前言目前机器学习框架有两大方向,Pytorch和Tensorflow 2。对于机器学习的小白的我来说,直观的感受是Tensorflow的框架
- 前言:python提供了诸多的魔法方法,其中__setattr__()方法主要用于类实例进行属性赋值,其定义在Object类官方提供的说明如
- 功能:扫描当前目录下所有CSV文件并对其中文件进行统计,输出统计值到CSV文件pip install pandasimport pandas
- 今天和某朋友聊天,谈到他们公司的一个小问题。如下:表A设备表,存储MAC地址,省份,城市,区。表B软件表,存储MAC地址,软件名字。功能是可
- 我们今天主要描述的是php和MySQL转义字符,我们大家都知道php和MySQL转义字符的实际应用比例还是占为多数的,如果你对这一技术,心存
- 学习关键语句:vue连接mysql数据库vue项目连接后台数据库配置vue通过node连接MySQL数据库写在前面为了快速学习nodejs制
- 1、pyqtgraph库数据可视化效果还不错,特别是窗体程序中图像交互性较好;安装也很方便,用 pip 安装。2、在Python中新建一个