Описание тега capnproto

Cap'n Proto - это формат обмена данными с нулевым копированием, описываемый языком схемы, похожим на Protobuf, и связанной с ним системой RPC на основе возможностей.
2 ответа

Передача файлов с использованием gRPC

Каков стандартный способ использования gRPC и буфера протокола для передачи файла или изображений из одного процесса в другой? Размер файла составляет от 1 до 6 МБ. В основном я хочу знать, как реализовать пары кода отправитель / получатель для pyth…
07 сен '17 в 21:16
1 ответ

Заполните список CapnProto не примитивным

Согласно документации CapnProto: (ПРИМЕЧАНИЕ: я использую версию C++) Для List, где Foo является не примитивным типом, тип, возвращаемый operator[] и iterator::operator*(): Foo::Reader (для List::Reader) или Foo::Builder (для List::Builder), Метод s…
19 мар '18 в 22:53
1 ответ

CapnProto максимальный размер файла

На данный момент мы используем ProtocolBuffers для обмена данными между python и C++. Однако мы сталкиваемся с максимальным ограничением размера файловых буферов протокола и рассматриваем возможность переключения всего на Cap'n Proto. Однако, поскол…
26 янв '18 в 09:42
1 ответ

Как отличить несколько типов сообщений в Cap'n Proto?

Я использую протокол Cap'n для отправки и получения сообщений между несколькими клиентами и моим сервером веб-сокетов. Поскольку у меня есть только один канал веб-сокетов для отправки и получения данных, и могут быть отправлены различные типы сообще…
20 ноя '17 в 22:31
1 ответ

Ошибка при загрузке общих библиотек: libcapnp-0.5.3.so

Я думаю, что это общая проблема, не связанная конкретно с Cap'n Proto. Сборка моего проекта завершается успешно, но при запуске я получаю: error while loading shared libraries: libcapnp-0.5.3.so: cannot open shared object file: No such file or direc…
13 авг '15 в 02:47
1 ответ

Проблема со списком Python для сложных типов

Ниже приведен фрагмент кода в Python, который хранит префиксы IP в основополагающем дереве, а затем связывает IP и ASN в словаре, если IP принадлежит префиксу. Я хотел бы узнать все различные ASN для конкретного префикса. Более подробная информация …
18 сен '15 в 09:37
1 ответ

Файлы cpp не создаются для capnp_generate_cpp()

У меня есть файл temp.capnp, где находится мой файл cmake find_package(CapnProto CONFIG REQUIRED) include_directories(${CAPNP_INCLUDE_DIRS}) add_definitions(${CAPNP_DEFINITIONS}) set(CAPNPC_SRC_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}" CACHE STRING "" FO…
12 фев '19 в 19:47
2 ответа

Невозможно отправить сообщения capnp через ZMQ

У меня есть следующий код, и я пытаюсь отправить сообщение capnp через ZMQ: ::capnp::MallocMessageBuilder message; Guitar::Builder guitar = message.initRoot<Guitar>(); guitar.setModel(1); guitar.setPrice(1200); kj::Array<capnp::word> wor…
28 июл '16 в 22:20
1 ответ

Есть ли какая-либо структура RPC с функциональностью сигнала, как в DBus?

В настоящее время мы ищем RPC фреймворки и не смогли найти ни одного с функциональностью сигнала, к сожалению, однако нам это нужно. Мы смотрели на gRPC, Apache Thrift, Cap-n-Proto и обнаружил, что никто из них не предоставляет такую ​​функционально…
16 янв '17 в 13:26
2 ответа

Flatbuffers против CBOR

Пожалуйста, помогите предложить некоторые достоинства и недостатки Flatbuffers и CBOR протоколов. Оба этих двоичных формата утверждают, что они хороши на своих веб-сайтах, но я не могу сделать некоторые хорошие различия между ними. Flatbuffers: Преи…
1 ответ

Поток во время сериализации с Cap'n'Proto

Рассмотрим схему Cap'n'Proto следующим образом: struct Document { header @0 : Header; records @1 :List(Record); // usually large number of records. footer @2 :Footer; } struct Header { numberOfRecords : UInt32; /* some fields */ }; struct Footer { /…
16 янв '16 в 07:44
1 ответ

Форвардные декларации в CapnProto

В схеме CapnProto есть какой-либо способ для предварительного объявления структур, так что вы можете создать древовидную структуру следующим образом: struct ExecuteProgram { code @0 :Text; } struct SequenceProgram { programs @0 :List(Program) } stru…
25 май '18 в 07:50
1 ответ

capnpc::compile не пишет файлы

У меня проблемы с работой с ящиком capnpc. Я использую Arch Linux, установил capnp из AUR и скомпилировал capnpc-rust из проекта github и поместил его в /usr/local/bin, Я могу легко скомпилировать файл.capnp с помощью команды capnp compile -orust --…
28 окт '15 в 13:49
1 ответ

Cap'n Proto - де-/ сериализация структуры в / из std::string для хранения в LevelDB

Я хочу сохранить некоторую структуру Capnproto в LevelDB, поэтому я должен сериализовать ее в строку и затем десериализовать обратно из std:: string. В настоящее время я играю со следующим (адаптировано отсюда: https://groups.google.com/forum/): cap…
08 апр '18 в 21:15
0 ответов

Добавление Cap'n Proto в быстрый для обмена данными BLE

Я пытаюсь добавить Cap'n Proto в мой проект. Не могу найти способ работы с кодированием и кодированием Я решил добавить эту библиотеку C Все хорошо с добавлением библиотеки, однако я не могу понять, как подготовить значения для записи их в характери…
04 июл '18 в 08:04
1 ответ

Поддержка Cap'n Proto CMake: CAPNP_LIB_CAPNP-JSON НЕ ОТНОСИТСЯ

Почему я должен установить set(CAPNP_LIB_CAPNP-JSON "") в моем CMakeLists.txt, чтобы не получить ошибку? Ошибка в следующем: CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure th…
14 окт '16 в 20:38
3 ответа

FlatBuffers vs. Protobuf

Мой вопрос: если FlatBuffers намного быстрее, чем Protobuf, почему он не используется более широко по сравнению с Protobuf? Раньше это была экспериментальная вещь, но сейчас она кажется достаточно зрелой, но пока не получила широкого распространения…
1 ответ

Примеры использования уникальных идентификаторов в Cap'n Proto

Документация Cap'n Proto содержит одно предложение в обоснование уникального идентификатора: Идентификаторы существуют для обеспечения относительно короткого, но однозначного способа ссылки на тип или аннотацию из другого контекста. Я не смог найти…
07 авг '18 в 13:03
2 ответа

C++ программа, требующая libsnappy

Я пытаюсь создать и построить программу на C++ (доступна здесь https://github.com/mortehu/text-classifier), для которой требуются libsnappy и Capn Proto. Я полагаю, что у меня возникла проблема с libsnappy, так как после выполнения следующих команд:…
26 окт '15 в 11:29
1 ответ

Cap'n Proto сгенерированный исходный код C++ не компилируется

У меня проблемы с этим фрагментом кода capnp: struct Result(Success, Error) { union { success @0 :Success; error @1 :Error; } } Я создал и скомпилировал исходный код на С ++ так: capnp compile -oc++ test.capnp g++ -o test.capnp.o test.capnp.c++ `pkg…
14 авг '15 в 13:24