Метод .peekdata

Назначение:Для выбранного сокета (выбор выполняется через sock.num) возвращает строку с «предварительным просмотром» данных из буфера RX. Данные из буфера НЕ удаляются.
Синтаксис:ser.peekdata(maxinplen as word) as string
Возвращает:Строка с данными из буфера RX
См. также:sock.getdata

ПараметрОписание
maxinplenМаксимальный объём данных для просмотра (word).

Подробности

Для TCP (sock.protocol = 1 - PL_SOCK_PROTOCOL_UDP) длина возвращаемых данных ограничена наименьшим из трёх значений: объёмом данных в самом буфере RX, ёмкостью «принимающей» строковой переменной и пределом, заданным аргументом maxinplen. Строковые переменные вмещают до 255 байт данных, поэтому метод позволяет просмотреть не более 255 «следующих» байт из буфера RX.

Для UDP (sock.protocol = 0 - PL_SOCK_PROTOCOL_UDP) действуют дополнительные ограничения. «Текущая» UDP-датаграмма всегда автоматически удаляется при выходе из события on_sock_data_arrival. Это значит, что при выходе из события on_sock_data_arrival датаграмма будет «потеряна» из буфера, даже если программа использовала только sock.peekdata. Кроме того, объём данных, возвращаемых sock.peekdata, ограничен «следующей» UDP-датаграммой, ожидающей в буфере RX.

Исходный материал Tibbo обновлён 12 августа 2022Оригинал на docs.tibbo.com · Сообщить об ошибке