ICallFrame::Free 方法 (callobj.h)
释放帧副本以避免内存泄漏。
使用 Copy 方法创建调用帧的副本时,调用帧不会自动清理复制的数据。 因此,在返回调用帧的副本后,用户负责调用 Free 方法以释放帧副本并避免内存泄漏。
语法
HRESULT Free(
[in] ICallFrame *pframeArgsDest,
[in] ICallFrameWalker *pWalkerDestFree,
[in] ICallFrameWalker *pWalkerCopy,
[in] DWORD freeFlags,
[in] ICallFrameWalker *pWalkerFree,
[in] DWORD nullFlags
);
参数
[in] pframeArgsDest
指向 ICallFrame 接口实例的指针。 表示调用帧的堆栈指针,在释放帧复制之前,输出参数应复制到该调用帧。 目标帧通常是最初从中复制该帧的父框架。 此参数是可选的。
释放帧并指定 pframeArgsDest 参数(与接收方帧的内存空间相同)时,每个接口指针上仅调用 pWalkerCopy 参数。
[in] pWalkerDestFree
指向 ICallFrameWalker 接口实例的指针。 如果 pframeArgsDest 中存在传入和传出参数,则传播要求释放这些值。 通过提供 pWalkerDestFree 对象,将释放接口指针。 如果 pframeArgsDest 为 NULL,则此参数也必须为 NULL ,并且应通过调用 Release 方法释放接口指针。
[in] pWalkerCopy
指向 ICallFrameWalker 接口实例的指针。 释放 pframeArgsDest 中的 in 和 out 参数时,将传播 out 参数。如果未指定此参数,则将接口指针传递到 AddRef。 此参数是可选的。
[in] freeFlags
CALLFRAME_FREE枚举中的标志。
[in] pWalkerFree
指向 ICallFrameWalker 接口实例的指针。 指定后,将针对在释放时遇到的每个接口指针进行回调。 如果未指定此参数,则 Release 方法释放接口指针。
[in] nullFlags
CALLFRAME_NULL枚举中的标志。
返回值
此方法可以返回以下值。
返回代码 | 说明 |
---|---|
|
该方法已成功完成。 |
|
发生意外错误。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | callobj.h |