Я пишу сервер для игры. Но не могу понять, как сделать так, чтобы он был многопоточный.
к примеру, если бы нужно было работать только с одним клиентом, то можно было бы просто написать:
import socket
sock = socket.socket()
sock.bind(('', 9090))
sock.listen(1)
conn, addr = sock.accept()
while True:
data = conn.recv(1024)
if not data:
break
conn.close()
Я бы мог принимать так сообщения и от нескольких клиентов. Но в этом случае сервер был бы синхронным. Чтобы добиться асинхронности, надо каждому клиенту предоставить свой поток, чтобы запросы других пользователей не мешали по времени слушать этот. Как это реализовать?