Я занимаюсь разработкой клиентского и серверного приложения, которое обменивается сообщениями между ними с помощью Protobuf.Сообщения могут быть длинного размера, поэтому я разделяю их и отправляю на сервер с прикрепленным заголовком.Заголовок содержит длину данных, их тип и т. Д.
Я использовал SerializedAsString для сериализации сообщения, чтобы отправить его по именованному каналу.На стороне сервера я получаю сообщение и анализирую его как строку.Однако я получаю сообщение об ошибке - возможно, потому, что сообщение protobuf не является полным сообщением (я читаю только 4-байтовый заголовок).
Я избегаю отправлять заголовок в одиночку, потому что после этого мне нужно будет прикрепить его к буферу, и он может быть подвержен ошибкам, потому что он не атомарный.
Есть ли официальные решения для этого?Как это обычно делается с использованием protobuf?