CALLFRAME_COPY 列挙 (callobj.h)
コピーした呼び出しフレーム のデータを親フレームのデータと共有できるかどうかを決定します。これは、親フレームに対する有効期間の依存関係を決定することによって行います。
構文
typedef enum __MIDL_ICallFrame_0003 {
CALLFRAME_COPY_NESTED = 1,
CALLFRAME_COPY_INDEPENDENT = 2
} CALLFRAME_COPY;
定数
CALLFRAME_COPY_NESTED 値: 1 クライアントは、コピーした呼び出しフレームを、親フレームの有効期間内に入れ子にしてデータを共有できるようにする方法で使用する必要があります。 このフラグを使用すると、非常に重要な最適化を行い、実際のパラメーター データを巧みに共有することでメモリ割り当てを回避できます。 ソース フレーム内で推移的に到達可能なインターフェイス ポインターのみがディープ コピーされると保証されるため、コピーではソース フレームに格納されるメモリとは別のメモリに格納されます。コピー操作が十分にインテリジェントな場合、コピーされたフレームで他のデータ型が実際にソースとメモリを共有している可能性があります。 |
CALLFRAME_COPY_INDEPENDENT 値: 2 コピーされた呼び出しフレームは、親から独立した有効期間を持ちます。 |
注釈
その結果、これらの CALLFRAME_COPY フラグのいずれかが ICallFrame::Copy に渡された場合、親フレームに存在するインターフェイス ポインターに影響を与えることなく、インターフェイス ポインターを変更できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | callobj.h |