我正在尝试在ProtoBuf中设计我的第一个文件格式,我不确定在某些情况下什么是最佳选择,因为内存/流布局对我来说并不完全清楚.
所以我实际上有几个问题,但都密切相关:
1)省略时,可选字段的成本是多少?
我认为它应该只花了一个位,因为位字段可以用来标记存在/不存在的字段,但我不知道.相反,它们可能会为每个可选字段使用整个字节.
2)当空的时候重复的字段成本是多少?是不是还一个位,如可选字段,或者是"场头" +一(varint)字节说,这是大小为0?
3)由于"字节"隐含的大小,是否有实际上是一个缺少的可选字节字段之间的尺寸差,和一个空所需要的字节字段?
[编辑]"存储器"是指文件系统或网络带宽上使用的空间; 我不是指RAM,因为这将依赖于编程语言.
| 归档时间: |
|
| 查看次数: |
3132 次 |
| 最近记录: |