Я использую API, который возвращает сообщения, оканчивающиеся байтом \ x04 (конец передачи). Я хотел бы поймать этот байт хорошим способом. Это код, который я написал:
# Only works if buffer size is 1 byte
read = lambda: self._sslsocket.recv(1)
response = b''
for data_buffer in iter(read, b'\x04'):
response += data_buffer
Я бы хотел, чтобы это решение работало с буфером произвольного размера. Есть ли способ сделать это без снижения производительности, или я должен использовать генератор / классический, пока True с recv (1024)?