0

我正在使用 VSTS 2008 + Native C++ 开发 RPC 程序(客户端和服务器)。我正在阅读 MSDN 文档以编组多维数组

http://msdn.microsoft.com/en-us/library/aa374185(VS.85).aspx

我对以下陈述感到困惑,我对离线和在线的含义感到困惑,为什么离线/在线与存根/性能的大小有关?有人可以帮忙澄清一下吗?

完全解释的方法完全离线编组数据。这大大减少了存根代码的大小,但也会导致性能下降。在混合模式编组中,存根在线编组一些参数。虽然这会导致更大的存根大小,但它也提供了更高的性能。

4

1 回答 1

1

很长一段时间以来,这是一个记录不充分的部分,因为他们将 RPC 扩展到“对象”空间,而没有什么,文档可能仍然过时。此外,您是否意识到它是对旧 DPC RPC 的延伸几十年的老技术?:-)

虽然 MS 在历史上拥有那个时代最优化的编组代码(Corba-on-the-Cob 和 ACE 风格的亵渎代码),但在线/离线的区别很可能在于部分解释(和优化)或完全解释(即所有数据驱动)。

我无法访问 MSDN 或任何微软网站,因为我要么惹恼了他们,要么我有一种流行的病毒阻止了他们的所有网站(我不介意前者或后者,这让我更多地利用我的时间有效地没有管理噪音)。

如果该链接不适用于 MIDL 编译器的 /Oic 或类似开关。它应该让您了解它的全部内容。我不会被它打扰太多,如果需要的话,尝试两者并查看性能/尺寸。

于 2009-11-08T11:11:43.377 回答