ロックディレクトリ
2020年2月10日 (月) 03:10時点におけるAdministrator (トーク | 投稿記録)による版 (ページの作成:「'''ロックディレクトリ'''とは、ディレクトリの作成と削除を使った排他制御の実装方法のひとつである。 == 概要 == 「ま…」)
ロックディレクトリとは、ディレクトリの作成と削除を使った排他制御の実装方法のひとつである。
概要
「まともなOSでは、ファイルの操作は明示しない限り排他的ではないが、ディレクトリの操作は常に排他的である」という特徴を利用した排他制御の方法である。
ディレクトリの作成はOSレベルで強制的にシングルスレッドで実行されるという特性を利用している。
if ( !mkdir("/tmp/lock") )
{// ロック失敗
}
else
{// ロック成功
}
排他制御の実装方法としてUNIX系では一般的なflock関数に相当するものがないWindowsでも ソースコードを分岐させずに、かつ簡潔明瞭に実装できるとして人気がある。