socket.recv ()

socket.recv ( bufsize [, flags ] )

Получает данные из сокета. Возвращаемое значение - байтовый объект, представляющий полученные данные. Максимальный объем данных, которые должны быть получены за один раз, определяется параметром bufsize. См. справочную страницу recv(2) Unix, чтобы узнать о значениях необязательных аргументов flags; по умолчанию он равен нулю.

Для наилучшего соответствия с аппаратными и сетевыми реалиями значение bufsize должно быть относительно небольшим, равным 2, например 4096.

Изменено в версии 3.5: если системный вызов прерывается и обработчик сигнала не вызывает исключения, метод теперь повторяет системный вызов вместо того, чтобы вызывать исключение InterruptedError (обоснование см. в PEP 475).

Пример

data = conn.recv(1024)

Читает до 1024 байтов из очередного сообщения, посланного клиентом (то есть поступившего из сети или через соединение IPC), и возвращает их сценарию в виде строки. При завершении работы клиентом возвращается пустая строка байтов - когда клиент закрывает свой конец сокета, возвращается признак конца файла.

Last updated