_CrtMemDumpAllObjectsSince_CrtMemDumpAllObjectsSince

プログラムの実行開始時以降または指定されたヒープ状態以降のヒープ内のオブジェクトについての情報をダンプします (デバッグ バージョンのみ)。Dumps information about objects in the heap from the start of program execution or from a specified heap state (debug version only).

構文Syntax

void _CrtMemDumpAllObjectsSince(
   const _CrtMemState *state
);

パラメーターParameters

statestate
ダンプの開始点となるヒープ状態へのポインターまたは NULLPointer to the heap state to begin dumping from or NULL.

RemarksRemarks

_CrtMemDumpAllObjectsSince関数は、ヒープに割り当てられたオブジェクトのデバッグヘッダー情報をユーザーが判読できる形式でダンプします。The _CrtMemDumpAllObjectsSince function dumps the debug header information of objects allocated in the heap in a user-readable form. ダンプ情報は、割り当ての追跡とメモリの問題の検出のためにアプリケーションで使用できます。The dump information can be used by the application to track allocations and detect memory problems. _Debugが定義されていない場合、 _CrtMemDumpAllObjectsSinceの呼び出しはプリプロセス中に削除されます。When _DEBUG is not defined, calls to _CrtMemDumpAllObjectsSince are removed during preprocessing.

_CrtMemDumpAllObjectsSinceは、 stateパラメーターの値を使用して、ダンプ操作を開始する場所を決定します。_CrtMemDumpAllObjectsSince uses the value of the state parameter to determine where to initiate the dump operation. 指定されたヒープ状態からのダンプを開始するには、 stateパラメーターに、 _CrtMemDumpAllObjectsSinceが呼び出される前に_CrtMemCheckpointによって入力された _CrtMemState構造体へのポインターを指定する必要があります。To begin dumping from a specified heap state, the state parameter must be a pointer to a _CrtMemState structure that has been filled in by _CrtMemCheckpoint before _CrtMemDumpAllObjectsSince was called. StateNULLの場合、関数はプログラムの実行開始時からダンプを開始します。When state is NULL, the function begins the dump from the start of program execution.

アプリケーションが_CrtSetDumpClientを呼び出してダンプフック関数をインストールした場合は、 _CrtMemDumpAllObjectsSince_CLIENT_BLOCK型のブロックに関する情報をダンプするたびに、アプリケーションによって提供されるダンプが呼び出されます。関数も同様です。If the application has installed a dump hook function by calling _CrtSetDumpClient, then every time _CrtMemDumpAllObjectsSince dumps information about a _CLIENT_BLOCK type of block, it calls the application-supplied dump function as well. 既定では、内部 C ランタイムブロック ( _CRT_BLOCK) はメモリダンプ操作に含まれません。By default, internal C run-time blocks (_CRT_BLOCK) are not included in memory dump operations. _CrtSetDbgFlag関数を使用すると、 _crtDbgFlag_CRTDBG_CHECK_CRT_DFビットをオンにして、これらのブロックを含めることができます。The _CrtSetDbgFlag function can be used to turn on the _CRTDBG_CHECK_CRT_DF bit of _crtDbgFlag to include these blocks. また、解放済みまたは無視としてマークされているブロック ( _FREE_BLOCK_IGNORE_BLOCK) は、メモリ ダンプに含まれません。In addition, blocks marked as freed or ignored (_FREE_BLOCK, _IGNORE_BLOCK) are not included in the memory dump.

ヒープ状態関数と _CrtMemState構造体の詳細については、「ヒープ状態レポート関数」を参照してください。For more information about heap state functions and the _CrtMemState structure, see Heap State Reporting Functions. デバッグ バージョンのベース ヒープでのメモリ ブロックの割り当て、初期化、管理の方法について詳しくは、「 CRT Debug Heap Details」をご覧ください。For more information about how memory blocks are allocated, initialized, and managed in the debug version of the base heap, see CRT Debug Heap Details.

必要条件Requirements

ルーチンによって返される値Routine 必須ヘッダーRequired header
_CrtMemDumpAll-ObjectsSince_CrtMemDumpAll-ObjectsSince <crtdbg.h><crtdbg.h>

互換性の詳細については、「 互換性」を参照してください。For more compatibility information, see Compatibility.

ライブラリLibraries

C ランタイム ライブラリのデバッグ バージョンのみ。Debug versions of C run-time libraries only.

Example

_CrtMemDumpAllObjectsSinceの使用例については、 crt_dbg2を参照してください。For a sample of how to use _CrtMemDumpAllObjectsSince, see crt_dbg2.

関連項目See also

デバッグ ルーチンDebug Routines
_crtDbgFlag_crtDbgFlag