socketserver

Posted 高卓

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socketserver相关的知识,希望对你有一定的参考价值。

基于TCP的套接字,关键就是两个循环,一个链接循环,一个通信循环

socketserver模块中分两大类:server类(解决链接问题)和request类(解决通信问题)

server类:

request类:

继承关系:

分析socketserver源码:

ftpserver=socketserver.ThreadingTCPServer((\'127.0.0.1\',8080),FtpServer)

ftpserver.server_forever()

查找属性顺序:ThreadingTCPServer->ThreadingMixln->TCPSever->BaseServer

源码分析总结:

基于TCP的socketserver我们自己定义的类中:

  1.self.server即套接字对象

  2.self.request即一个链接

  3.self.client_address即客户端地址

基于udp的socketserver我们自己定义的类中:

  1.self.request是一个元组(第一个元素是客户端发来的数据,第二部分是服务端的udp套接字对象),如(b\'adsf\',<socket.socket fd=200,family=AddressFamily.AF_INET,type=Socket.SOCK_DGRAM,proto=0,laddr=(\'127.0.0.1\',8080)>)

  2.self.client_address即客户端地址

-------------------------------------------------------------END----------------------------------------------------------------

 

以上是关于socketserver的主要内容,如果未能解决你的问题,请参考以下文章

socketserver模块

第八 socketserver

socketserver用法列子

socketserver模块使用方法

socketserver模块使用方法

进度条 --- socket ---socketserver