Я занимался программированием сокетов клиент-сервер.Я разграничивал сообщения по <<msgBegin>>
и <<msgEnd>>
.Но я хочу, чтобы у другого механизма для обнаружения конца неправильно сформированного сообщения не было <<msgEnd>>
.
При выполнении socket.recv()
как узнать, закончился ли ввод данных?Когда нет данных, socket
блокируется.Итак, я сделал socket.setblocking(False)
и перезапустил, так что теперь он сразу дает BlockingIOError()
.Это то, что я должен поймать в блоке try-except
, чтобы сигнализировать о конце ввода данных в сокет?или их любой другой стандартный способ сделать то же самое?