采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师你好,之前了解到go语言结构体中相同类型的字段紧挨着存放能起到内存对齐的效果,例如:
type user struct { id int age int name string address string }
现在看到proto文件的消息体定义,我就想到这个问题,就是proto文件的消息体中相同类型的字段紧挨着存放有没有内存对齐的效果?
在 Protocol Buffers中,这个原则并不适用。原因在于 protobuf 使用不同的方式来表示和存储数据。protobuf 使用一种紧凑的二进制格式,它基于字段的标签编号(tag number)来序列化和反序列化数据。对于 protobuf 来说,字段的顺序并不影响内存对齐。事实上,protobuf 的设计目标之一就是使数据尽可能地紧凑,以便在网络传输中节省带宽。
登录后可查看更多问答,登录/注册
云原生专家带来稀缺的 PaaS 平台实战,带你直击核心业务+技术
446 2
652 13
426 9
475 8
412 8