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 인터페이스의 instance 대한 포인터입니다. 프레임 복사본을 해제하기 전에 out 매개 변수를 복사해야 하는 호출 프레임의 스택 포인터를 나타냅니다. 대상 프레임은 일반적으로 프레임이 원래 복사된 부모 프레임입니다. 이 매개 변수는 선택적 요소입니다.
프레임을 해제하고 수신기 프레임과 동일한 메모리 공간에 있는 pframeArgsDest 매개 변수를 지정하는 경우 각 인터페이스 포인터에서 pWalkerCopy 매개 변수만 호출됩니다.
[in] pWalkerDestFree
ICallFrameWalker 인터페이스의 instance 대한 포인터입니다. pframeArgsDest에 및 out 매개 변수가 있는 경우 전파하려면 해당 값을 해제해야 합니다. pWalkerDestFree 개체를 제공하면 인터페이스 포인터가 해제됩니다. pframeArgsDest가 NULL인 경우 이 매개 변수도 NULL이어야 하며 Release 메서드를 호출하여 인터페이스 포인터를 해제해야 합니다.
[in] pWalkerCopy
ICallFrameWalker 인터페이스의 instance 대한 포인터입니다. pframeArgsDest의 in 및 out 매개 변수가 해제되면 out 매개 변수의 전파가 수행됩니다. 이 매개 변수를 지정하지 않으면 인터페이스 포인터가 AddRef에 전달됩니다. 이 매개 변수는 선택적 요소입니다.
[in] freeFlags
CALLFRAME_FREE 열거형의 플래그입니다.
[in] pWalkerFree
ICallFrameWalker 인터페이스의 instance 대한 포인터입니다. 지정하면 해제하는 동안 발생하는 각 인터페이스 포인터에 대해 콜백이 수행됩니다. 이 매개 변수를 지정하지 않으면 Release 메서드에 의해 인터페이스 포인터가 해제됩니다.
[in] nullFlags
CALLFRAME_NULL 열거형의 플래그입니다.
반환 값
이 메서드는 다음 값을 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
메서드가 완료되었습니다. |
|
예기치 않은 오류가 발생했습니다. |
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | callobj.h |