COM+ 技术详解:管道与管理对象模型
1. COM+ 管道
COM 下的标准编组技术最初旨在尽可能隐藏 RPC 机制的细节。当客户端调用方法时, [in] 参数会传输到服务器, [out] 参数会在调用结束时返回。一般来说,通过方法参数在网络上传输的数据量不大,数据传输性能不是大问题。但如果需要传输大量数据,标准传输机制就不够用了。COM+ 引入了管道来方便在方法调用中进行批量数据传输。
COM+ 管道是相同类型元素的有序序列,支持 Push 和 Pull 两种方法。 Push 用于向服务器发送数据, Pull 用于从服务器获取数据。SDK 为管道定义了类似模板的接口定义:
interface IPipe##name : IUnknown
{
HRESULT Pull(
[out, size_is(cRequest), length_is(*pcReturned)]type *buf,
[in] ULONG cRequest,
[out] ULONG *pcReturned );
HRESULT Push(
[in, size_is(cSent)] type *buf,
[in] ULONG cSent );
}
基于此模板,COM+ 定义了三个管道接口:
| 接口名称 | 功能 |
| ---- | ---- |
|
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



