В настоящее время я пытаюсь пройти базовое руководство по работе в сети, и я заметил, что элементарная клиент-серверная программа зависает при попытке сервера прочитать больше данных от клиента, когда все данные будут получены.В основном код выглядит следующим образом:
def recv_all(sock,length):
data=''
while len(data)<length:
more=sock.recv(length-len(data))
if not more :
raise EOFError('socket inchis %d octeti intr-un mesaj de %d octeti'%(len(data),length))
data+=more
return data
Эта функция вызывается как с клиента, так и с сервера, но сервер сначала использует ее для обработки клиентского запроса.Все идет хорошо до второго вызова sock.recv, когда сообщение с запросом получено.
Вместо того, чтобы переходить к следующей строке (с большим числом 0), отладчик просто зависает там, и я понятия не имею, с чем это может быть связано.актуален в любом случае.Любая помощь будет оценена, спасибо