问题标签 [capnproto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Wire 协议缓冲区与 Cap'n proto 哪个更好?
我目前在我的一个 android 应用程序中使用有线协议缓冲区,看起来它的 parseFrom() 方法效率不高,因为即使解析非常少量的数据也需要大约 10 毫秒。
所以我遇到了这个:https ://capnproto.org/index.html
有谁知道这两个协议缓冲区之间的主要区别是什么,主要是在性能和功能方面?
rust - Cap'n proto 的可变状态
应该如何将 Cap'n Proto 用于应用程序的可变状态,类似于如何使用 Protobuf?有垃圾收集器吗?
Kenton Varda 在比较 Cap'n Proto、FlatBuffers 和 SBE 时证实,Cap'n Proto 在内部使用竞技场分配器来处理消息。如果一个人在很长一段时间内编辑它,例如由于被写入磁盘并重新加载,一条消息将无限制地增长。
Cap'n Proto 是否有任何垃圾收集器来重新排列消息并回收任何浪费的空间?垃圾收集器会是最佳方法吗?如果没有,或者不存在,那么推荐的方法是什么?
我实际上正在编写一个 Rust 程序,无论如何它只能保存加密数据。因此,我可以重新复制整个消息结构,但我对更广泛的选项感到好奇。
c++ - 加载共享库时出错:libcapnp-0.5.3.so
我认为这是一个与 Cap'n Proto 没有特别关系的通用问题。
我的项目构建成功,但在运行时我得到:
也许我在 CMake 中遗漏了一些东西?
我验证libcapnp-0.5.3.so
存在于/usr/local/lib
我还尝试添加:
c++ - Cap'n Proto 在抛出 'kj::ExceptionImpl' 的实例后调用终止
当调用 Cap'n Proto's 时writeMessageToFd(pipe, message);
,我收到此错误:
c++ - Cap'n proto 生成的 C++ 源代码无法编译
我在使用这段 capnp 代码时遇到了问题:
我像这样创建并编译了 c++ 源代码:
而且我在生成的头文件中的多个位置遇到了同样的错误(与错误而不是成功相同):
这是 g++ 抱怨的定义之一:
我真的不明白为什么g ++不接受这个......
我使用 capnproto 0.5.3(首先在 0.5.2 中遇到此问题,然后更新以查看是否有帮助)和 g++ 4.9.2。
java - Cap'n Proto - 在 Java 中查找消息大小
我正在使用 TCP 客户端/服务器将 Cap'n Proto 消息从 C++ 发送到 Java。
有时接收缓冲区可能会过满或过少,为了处理这些情况,我们需要知道消息的大小。
当我在 Java 中检查缓冲区的大小时,我得到 208 个字节,但是调用
返回 4(不确定此处使用的计量单位)。
我注意到 4 分为 208、52 次。但我不知道使用 52 的重要转换因子。
如何检查 Java 中的消息大小?
c++ - 如何通过 ZMQ 发送 Cap'n Proto 消息
使用 Cap'n Proto 发送消息的示例方法需要一个文件描述符来写入:
但在 ZMQ 中,消息需要传递给 ZMQ 函数:
http://zguide.zeromq.org/page:all
如何解决这种不兼容问题?
javascript - 有人用过 capnproto js (capnp-js) 库吗?
是否有人使用(或计划使用)用于 nodejs 的 capnp-js-plugin和capnp-js模块?我克隆了这些存储库并运行了测试,但它们失败了。此外,当我只安装 capnp-js(通过 npm)时,即使对于简单的模式,生成的 js 代码也会出现语法错误:
谢谢
python - 复杂类型的python列表问题
下面是 Python 中的代码片段,它将 IP 前缀存储在基数树中,然后如果 IP 属于前缀,则将 IP 和 ASN 关联到字典中。
我想找出特定前缀的所有不同 ASN。更多详情如下:
例如:val
在多次迭代中具有来自 protobuf 的以下值:
当我打印出seen_list
:
显然val
在seen_list
;但是,if val not in seen_list:
总是正确的并且val
被附加了seen_list
很多次。我不明白为什么条件总是返回真。是因为存储的对象的类型seen_list
吗?