内容
知识点
asyncore 、asynchat模块运用
环境
python 3.5
功能描绘
在本实验中,我们将实现一个简略的图形界面谈天系统。我们可以经过图形客户端登录谈天室,并与其他成员进行谈天。
分析
由于 Python 是一门带 GIL 的语言,所以在 Python 中运用多线程处理IO操作过多的使命并不是很好的选择。同时谈天服务器将同多个 socket 进行通信,所以我们可以根据 asyncore 模块实现谈天服务器。aysncore 模块是一个异步的 socket 处理器,经过运用该模块将大大简化异步编程的难度。asynchat 模块在 asyncore 模块的基础上做了进一步封装,简化了根据文本协议的忘了通信使命的开发难度。
已然要开发谈天程序,那必然需要规划谈地利运用的协议。为了简略起见,我们将要开发的谈天服务器只支撑文本协议,经过 command message的方式调用相关的操作。比如如果客户端发送以下文本,将执行相应的操作
步骤
服务器类
这里我们首先需要一个聊天服务器类,经过继承 asyncore 的 dispatcher 类来完成,我们编写 server.py文件:
本文来自企鹅号 - IT技术java交流媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文来自企鹅号 - IT技术java交流媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。