from gevent import monkey;monkey.patch_all()
from socket import *
from gevent import spawn #导入spawn之前一定要传入monkey
#俩个io密集型任务
def comun(conn):
while True: # 链接循环
try:
data = conn.recv(1024)
if len(data) == 0: break
conn.send(data.upper())
except ConnectionResetError:
break
conn.close()
def server(ip,port,backlog=5):
server=socket(AF_INET,SOCK_STREAM)
server.bind((ip,port))
server.listen(backlog)
while True: # 链接循环
conn,client_addr= server.accept()
print(client_addr)
# 通信
spawn(comun,conn)
if __name__ == '__main__':
g1=spawn(server,'127.0.0.1',8080)
g1.join()