CFile::LockRange
ファイルが既にロックされている場合は例外をスローする開いているファイルのバイト列をロックします。
virtual void LockRange(
ULONGLONG dwPos,
ULONGLONG dwCount
);
パラメーター
dwPos
ロックするバイトの範囲の開始文字のオフセット (バイト単位)dwCount
ロックされるスコープ バイト数。
解説
ファイルのバイト列をロックすると、他のプロセスとそのバイトにアクセスできません。ファイルの複数の領域をロックできますが、重複の領域は使用できません。
ロックを解除すると、領域は UnlockRange のメンバー関数を使用してロックされた領域では、バイト範囲正確に対応する必要があります。LockRange 関数は隣接領域をマージできません; 2 種類のロックされた領域が隣接している場合は、各領域を個別にロックを解除する必要があります。
[!メモ]
この関数は CMemFileで使用できない派生クラスです。
使用例
CFile cfile;
cfile.Open(_T("LockRange_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
ULONGLONG dwPos = 10;
ULONGLONG dwCount = 100;
cfile.LockRange(dwPos, dwCount);
// do something with the file
cfile.UnlockRange(dwPos, dwCount);
必要条件
ヘッダー : afx.h