次の方法で共有


_CrtMemCheckpoint

デバッグ ヒープの現在の状態を取得し、アプリケーションが指定した _CrtMemState 構造体に格納します (デバッグ バージョンだけ)。

void _CrtMemCheckpoint(
   _CrtMemState *state 
);

パラメーター

  • state
    メモリのチェックポイントを格納する _CrtMemState 構造体へのポインター。

解説

_CrtMemCheckpoint 関数は、指定された時点のデバッグ ヒープの状態のスナップショットを作成します。_CrtMemCheckpoint などの他のヒープ状態関数は、このスナップショットを使用してメモリ リークおよびその他の問題を検出できます。_DEBUG が未定義の場合、_CrtMemState の呼び出しはプリプロセスで削除されます。

state パラメーターには、Crtdbg.h で定義されている _CrtMemState 構造体の割り当て済みインスタンスへのポインターを渡す必要があります。チェックポイントの作成時に _CrtMemCheckpoint でエラーが発生すると、_CRT_WARN デバッグ レポートが生成され、問題が表示されます。

ヒープ状態関数と _CrtMemState 構造体の詳細については、「ヒープの状態をレポートする関数」を参照してください。デバッグ バージョンのベース ヒープに対するメモリ ブロックの割り当て、初期化、管理方法の詳細については、「メモリ管理とデバッグ ヒープ」を参照してください。

state が NULL の場合は、「パラメーターの検証」に説明されているように、無効なパラメーター ハンドラーが呼び出されます。実行の継続が許可された場合、この関数は errno、_doserrno、_sys_errlist、および _sys_nerr を EINVAL に設定して処理を戻します。

必要条件

ルーチン

必須ヘッダー

_CrtMemCheckpoint

<crtdbg.h>、<errno.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

ライブラリ:CRT ライブラリの機能 のデバッグ バージョンのみ。

使用例

crt_dbg1」を参照してください。

同等の .NET Framework 関数

該当なし標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

関連項目

デバッグ ルーチン

_CrtMemCheckpoint