Как я могу слушать данные, полученные и отправлять данные одновременно с сокетами в Python 3 - PullRequest
0 голосов
/ 12 октября 2019

Я не могу отправлять и получать данные одновременно с использованием сокетов в python

Я не могу придумать, что можно сделать, чтобы это исправить.

#Server
import socket
import time
host = socket.gethostname()
port = 1222
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((host, port))
s.listen(5)
cs, address = s.accept()
print("connected {0}".format(str(address)))
while True:
    time.sleep(0.5)
    msg = input()
    cs.send(msg.encode("utf-8"))
    data = cs.recv(1024)
    print(data.decode("utf-8"))
#Client
import socket
import time
from threading import Thread
host = socket.gethostname()
port = 1222
password = "Moffitt123"
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
while True:
        print('connecting')
        try:
                s.connect((host, port))
        except:
                print('failed')
                time.sleep(1)

        else:
                break

while True:
        datar = s.recv(1024)
        print(datar.decode("utf-8"))
        datas = s.send(input().encode("utf-8"))

Невозможно отправить несколько сообщений подряд, одно необходимо отправить, а затем другое. Я хочу иметь возможность отправлять несколько сообщений подряд с любой стороны и получать их все.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...