网站xml地图,卡地亚手表官方网站,做电商网站的设计思路有什么,天津网站制作套餐套接字(socket)是计算机网络数据结构#xff0c;在任何类型的通信开始之前#xff0c;网络应用程序必须创建套接字#xff0c;可以将其比作电话的插孔#xff0c;没有它将无法进行通信常用的地址家族AF_UNIX#xff1a;基于文件#xff0c;实现同一主机不同进程之间的通信…套接字(socket)是计算机网络数据结构在任何类型的通信开始之前网络应用程序必须创建套接字可以将其比作电话的插孔没有它将无法进行通信常用的地址家族AF_UNIX基于文件实现同一主机不同进程之间的通信AF_INET基于网络适用于IPv4AF_INET6基于网络使用于IPv6常见的连接类型SOCK_STREAM即TCP/IP。面向连接的套接字通信之前必须建立可靠的连接。面向连接的套接字提供序列化的、可靠的和不重复的数据交付而没有记录边界。SOCK_DGRAM即UDP。面向非连接的套接字通信之前无需建立连接。在数据传输过程中无法保证数据的有序性、可靠性和重复性。然而数据报确实保存了记录边界意味着数据是以整体发送的而非事先切割多个片段。socket通信server端import socketserver socket.socket() # 默认是AF_INET、SOCK_STREAMserver.bind((localhost,6868)) # 将主机号与端口绑定到套接字server.listen() # 设置并启动TCP监听器while True:conn,addr server.accept() # 被动接受TCP连接一直等待连接到达while True:data conn.recv(1024) # 接收TCP消息并制定最大长度if not data:print(连接已断开)breakconn.send(data.upper()) # 将接收到的数据转为大写在发回给它server.close()client端import socketclient socket.socket() # 默认是AF_INET、SOCK_STREAMclient.connect((localhost,6868))while True:s input()client.send(s.encode(utf-8))data client.recv(1024)client.close()执行结果:socketserver模块使用socketserver实现多并发import socketserverclass MyServer(socketserver.BaseRequestHandler):def handle(self):while True:self.data self.request.recv(1024)if not self.data:print(%s客户端连接已断开%self.client_address)breakself.request.sendall(self.data.upper())if __name__ __main__:server socketserver.ThreadingTCPServer((localhost,6969),MyServer) # 开启一个线程server.serve_forever()希望本文所述对大家Python程序设计有所帮助。您可能感兴趣的文章: