次の方法で共有


ReadPreviousLogRestartArea 関数 (clfsw32.h)

読み取りコンテキスト pvReadContext で指定された現在の再起動レコードに対して相対的な前のログ再起動領域を読み取ります。 この読み取りコンテキストは、 ReadLogRestartArea の呼び出しによって以前に作成されたものです。

構文

CLFSUSER_API BOOL ReadPreviousLogRestartArea(
  [in]                PVOID        pvReadContext,
  [out]               PVOID        *ppvRestartBuffer,
  [out]               PULONG       pcbRestartBuffer,
  [out]               PCLFS_LSN    plsnRestart,
  [in, out, optional] LPOVERLAPPED pOverlapped
);

パラメーター

[in] pvReadContext

ReadLogRestartArea が返すシステム割り当て読み取りコンテキストへのポインター。

これらの関数が ERROR_IO_PENDINGを返しても、有効な読み取りコンテキストへのポインターが返されます。 非同期補完の詳細については、このトピックの「解説」セクションを参照してください。

[out] ppvRestartBuffer

再起動データへのポインターを受け取る変数へのポインター。

[out] pcbRestartBuffer

*ppvRestartBuffer で再起動データのサイズをバイト単位で受け取る変数へのポインター。

[out] plsnRestart

この 関数が返 す再起動領域のログ シーケンス番号 (LSN) を受け取るCLFS_LSN構造体へのポインター。

[in, out, optional] pOverlapped

非同期操作に必要な OVERLAPPED 構造体へのポインター。

非同期操作を使用しない場合、このパラメーターは NULL にすることができます。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

次の一覧は、考えられるエラー コードを示しています。

注釈

CreateLogMarshallingArea で指定されたログ ブロック サイズが、完全なログ ブロックを保持するのに十分な大きさでない場合は、エラー メッセージ ERROR_LOG_BLOCK_INCOMPLETEが返されます。

readPreviousLogRestartAreaエラー コード ERROR_IO_PENDINGで失敗した場合、有効な読み取りコンテキストへのポインターは、ppvReadContext パラメーターによって指される変数に配置されます。

ログ レコードのコピーを完了するには、クライアントはまず、 GetOverlappedResult またはいずれかの同期 待機関数を使用して、重複した I/O 操作の遅延完了と実行を同期する必要があります。 詳細については、「 同期」と「入力と出力の重複」を参照してください。

ReadPreviousLogRestartArea が非同期的に完了すると、要求された再起動領域はディスクから読み取られますが、有効なポインターは *ppvRestartBuffer に配置されません。

有効なポインターを取得するには、クライアントが ReadPreviousLogRestartArea を 2 回目に呼び出す必要があります。

メモ 共通ログ ファイル システム (CLFS) の読み取りコンテキストはスレッド セーフではありません。 一度に複数のスレッドで使用しないでください。

CLFS 読み取りコンテキストは、一度に複数の非同期読み取りに渡さないでください。または、関数がERROR_READで失敗します。

 

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー clfsw32.h
Library Clfsw32.lib
[DLL] Clfsw32.dll

こちらもご覧ください

CLFS_LSN

一般的なログ ファイル システム関数

CreateLogFile

OVERLAPPED

ReadLogRestartArea

同期と重複入力と出力