Chinaunix首页 | 论坛 | 博客
  • 博客访问: 85597
  • 博文数量: 9
  • 博客积分: 1529
  • 博客等级: 上尉
  • 技术积分: 113
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-16 02:14
文章分类

全部博文(9)

文章存档

2011年(5)

2010年(4)

我的朋友

分类: C/C++

2010-05-16 02:27:33

内存对齐与网络传输
今天遇到一个奇怪的问题,我用STREAM的核心自己做了个流数据处理系统,我的客户端将一个结构体直接Copy,通过网络发送到服务段,服务端不理解任何数据结构,只是当成一块内存数据,其实是想编组成一个Tuple送给STREAM的核心,按STREAM核心的编组格式.但是我的查询客户端查出来的数据就是不对。最终想到可能是系统为加速内存访问,在我的结构体里面补了些东西,经过将服务端段的数据内存大小和客户端的结构体内存大小,服务端的大小大于客户端的结构体大小,客户端的结构体大小是105,到了服务端的大小是108,明白了以后,解决问题就自然简单了,然后我在客户将结构体的成员一个一个的复制到内存再发到服务端,这样就OK了。
希望给大家一些教训。


阅读(1174) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-05-17 00:26:36

顶你 ! 不顶肺