IO 多路复用
什么是 IO 多路复用呢,其当我们看到这么一个词,可能会感觉很高大上,其实IO多路复用,结合上篇文章的 socket 来说,就是一个相当于会监控活跃的客户端,而不就是说会采用遍历的机制去一个一个询问客户端,其实IO多路复用有三种技术,分别是 Epoll、 Select、Poll
那么我们要将的就是Epoll,是 Linux 下的一种 IO多路复用,那么应该怎么样和我们的了互动和服务器结合起来,那么直接上代码吧
1 | import selectors # 导入包 |
客户端代码1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25import socket
# 生成客户端socket
client = socket.socket()
# 向服务端发起连接
client.connect(('127.0.0.1', 9000))
# 循环发送和接收
while True:
msg = input('>>')
client.send(msg.encode())
data = client.recv(1000)
print('服务端返回的数据{}'.format(data.decode()))
import socket
# 生成客户端socket
client = socket.socket()
# 向服务端发起连接
client.connect(('127.0.0.1', 9000))
# 循环发送和接收
while True:
msg = input('>>')
client.send(msg.encode())
data = client.recv(1000)
print('服务端返回的数据{}'.format(data.decode()))