我计划使用套接字在客户端 32 位应用程序和 64 位应用程序之间进行函数调用。
通过套接字接口调用函数、传递变量和返回参数的最佳方案是什么。我可以控制客户端和服务器代码,所以我可以实现任何东西。
我在想,让套接字数据包由以下内容组成: - 1 个字:函数名的长度(字符数) - 字符串:实际的函数名 - 1 个字:函数参数的长度(以字节为单位) - 函数参数
请让我知道,什么是最健壮和可扩展的方法。也许我可以重用编译器、Web 服务或虚拟机调用约定所使用的原则。
提前致谢
我计划使用套接字在客户端 32 位应用程序和 64 位应用程序之间进行函数调用。
通过套接字接口调用函数、传递变量和返回参数的最佳方案是什么。我可以控制客户端和服务器代码,所以我可以实现任何东西。
我在想,让套接字数据包由以下内容组成: - 1 个字:函数名的长度(字符数) - 字符串:实际的函数名 - 1 个字:函数参数的长度(以字节为单位) - 函数参数
请让我知道,什么是最健壮和可扩展的方法。也许我可以重用编译器、Web 服务或虚拟机调用约定所使用的原则。
提前致谢
我建议您使用协议缓冲区进行序列化:
http://code.google.com/apis/protocolbuffers/docs/reference/cpp/index.html
教程:
http://code.google.com/apis/protocolbuffers/docs/cpptutorial.html
当您将对象发送到另一端时,从一个长度前缀(32 位 int)开始,它定义了您应该读取多少字节才能获得完整的 protobuf 消息。