Я пытаюсь написать серию сообщений разделил с помощью этой функции в google::protobuf::util
кодированный поток, указывающий на файл в моей локальной файловой системе. Похоже, что вызов message.SerializeWithCachedSizes()
терпит неудачу после успешной записи ровно 8192 байтов сообщений с разделителями в поток.
Мой вариант использования почти идентичен этому пользователю, который задал вопрос о том, как писать сообщения в файл.
Насколько я мог видеть, документация по буферу протокола ничего не говорит о специальной обработке записи данных в закодированный поток за пределами 8192 байт, поэтому я предполагаю, что это должно просто работать. Это ожидаемое поведение, и другие успешно использовали эту функцию без проблем?
Я также пытался использовать Ostream и ZeroCopyFileStream с таким же поведением.