Socket 是什么
Socket 是一种在计算机网络中用于实现进程间通信的一种机制。它是网络编程中的重要概念,通过它可以在不同的计算机之间进行数据传输和通信。Socket 可以用于实现各种网络应用,包括客户端-服务器模型、P2P 应用等。基本上,Socket 允许不同计算机上的进程通过网络进行通信,从而实现数据交换和协作。
更多详细知识点可以看
https://segmentfault.com/a/1190000041413541#item-3
添加链接描述
服务端代码
import socket
import sys
import threadingdef send_msg(client_socket):#发送数据while True:message = input()if message == 'close':client_socket.close()sys.exit(0)else:client_socket.sendall(message.encode())print('服务端:', message)def rece_msg(client_socket):# 接收响应while True:data = client_socket.recv(1024)print('客户端:', data.decode())def server_client():# 创建一个TCP/IP套接字client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 服务地址server_addr = ('localhost', 8888)# 绑定套接字到端口client_socket.bind(server_addr)client_socket.listen(3)# 等待客户端连接clientsocket, addr = client_socket.accept()return clientsocketif __name__ == '__main__':client_socket = server_client()# 发送消息send_msg = threading.Thread(target=send_msg, args=(client_socket,))send_msg.start()#接收消息rece_msg = threading.Thread(target=rece_msg, args=(client_socket,))rece_msg.start()
客户端代码
import socket
import sys
import threadingdef send_msg(client_socket):#发送数据while True:message = input()if message == 'close':client_socket.close()sys.exit(0)else:client_socket.sendall(message.encode())print('客户端:', message)def rece_msg(client_socket):# 接收响应while True:data = client_socket.recv(1024)print('服务端:', data.decode())if __name__ == '__main__':# 创建一个TCP套接字client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 连接服务器server_addr = ('localhost', 8888)client_socket.connect(server_addr)# 发送消息send_msg = threading.Thread(target=send_msg, args=(client_socket,))send_msg.start()# 接收消息rece_msg = threading.Thread(target=rece_msg, args=(client_socket,))rece_msg.start()