关于CDR的问题请教
我在服务端使用CDR_Output做了整编,注意了大小头的问题,但是在其他平台上的客户端程序并不是使用ACE编写的,无法使用ACE的方式使用CDR_Input进行解编处理。 请问在其他平台上的客户端如何适应这种情况呢,是否我在服务端也不能使用ACE的整编功能呢!?不知道该如何处理,请各位出个主意!
[ 本帖最后由 shenming 于 2009-9-3 12:43 编辑 ] 如果是你适配已经存在的客户端,没有其他平台已经使用CDR的客户端,那么你改,
如果是你们公司的服务和客户端,都大量使用了CDR,除了这个的话,客户端改。
服务器与客户端使用两套整编的机制,是自讨苦吃。
嗯,看样子必须统一使用同样的转换啊
嗯,看样子必须统一使用同样的转换啊,一头热还是不成哦。 我们在项目中统一为采用网络字节序组合数据,不允许字节对齐.这样无论用不用CDR都能很好的通信. 网络编程里面对数据传输都有一个不成文的约定的。也就是数据在网络上传输都是以大字节编码的,称为网络字节序。
而操作系统根据CPU的不同可能是小字节,也可能是打字节,统一 叫做主机字节序。
所有应用程序在发送字节数据到远端时,统一把主机字节转换了网络字节序。
应用程序从网络收取到数据以后,统一把网络字节转换为主机字节。
ACE的大小头问题,其实也是更加本地来设置的,一般设置为Native即可。
页:
[1]