ファイルとレコードのロックの使用
UNIX のロック機能を使用すると、デッドロックを検出および防止できます。デッドロックが発生する可能性があるのは、システムがレコードロックインタフェースを休眠させようとするときだけです。このとき、2 つのプロセスがデッドロック状態であるかどうかを判断する検索が行われます。潜在的なデッドロックが検出されると、ロックインタフェースは失敗し、デッドロックを示す値が errno に設定されます。F_SETLK を使用してロックを設定するプロセスは、ロックがすぐに取得できなくても、それを待たないので、デッドロックは発生しません。
事務処理に必須の「ファイル・ロッキング」
F_RDLCK リードロック read lock (シェアードロック shared lock)
F_WRLCK ライトロック write lock (排他ロック exclusive lock)
F_UNLCK アンロック (上記ふたつのロックを解除)
F_WRLCK...