logo
Литература_1 / photon_old

Размер буфера сообщений

Как описано выше, аргументы Вашей функции ввода включают:

msg Указатель на буфер событий, использованный для получения сообщений.

msglen Размер буфера.

Этот буфер может оказаться недостаточно велик, чтобы вместить целиком всё сообщение. Одним из способов обработки этого – выделять первые несколько байт сообщения под указание типа сообщения и отсюда определять, насколько большим оно может быть. Как только Вы узнаете размер сообщения, Вы сможете:

или

Альтернативным способом является установка размера буфера событий таким, чтобы он мог вместить самое большое сообщение, которое получит Ваше приложение (если Вы это знаете). Это может быть выполнено функцией PtResizeEventMsg(). Обычно Вы должны выполнить этот вызов до того, как предполагаете получить какие-либо сообщения.

 Функция PtResizeEventMsg() не уменьшит буфер сообщений меньше определённого минимального размера. Это потому, что библиотека виджета хочет продолжить функционировать.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4