「ロックディレクトリ」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
(ページの作成:「'''ロックディレクトリ'''とは、ディレクトリの作成と削除を使った排他制御の実装方法のひとつである。 == 概要 == 「ま…」)
(相違点なし)

2020年2月10日 (月) 03:10時点における版

ロックディレクトリとは、ディレクトリの作成と削除を使った排他制御の実装方法のひとつである。

概要

「まともなOSでは、ファイルの操作は明示しない限り排他的ではないが、ディレクトリの操作は常に排他的である」という特徴を利用した排他制御の方法である。

ディレクトリの作成はOSレベルで強制的にシングルスレッドで実行されるという特性を利用している。

if ( !mkdir("/tmp/lock") ) 
{// ロック失敗
} 
else 
{// ロック成功   
}

排他制御の実装方法としてUNIX系では一般的なflock関数に相当するものがないWindowsでも ソースコードを分岐させずに、かつ簡潔明瞭に実装できるとして人気がある。