一、主要知识点
- asyncore作为服务器端的主要用法
- async_chat模块的使用
- pySimpleGUI界面框
- telnetlib作为客户端socket模块
二、如何设计一个聊天室的应用?应该考虑哪些方面
- 必要条件:服务器端、多客户端
- 必要约束:数据传输协议—以换行符作为消息的分隔符
- 原理:服务器监听消息来源、客户端连接服务器并发送消息到服务器
三、async_chat模块介绍
他是dispacher这个类的抽象子类,定义了一些专门数据传输方面的方法,非常有利于实现数据传输。
-
主要方法:
-
collect_incoming_data:接收数据
-
found_terminator:当输入数据流符合由set_terminator设置的终止条件时被调用
-
set_terminator:设置终止条件
-
push:向数据传输队列压入要传输的数据