JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... ただ一つのプロセスだけが同時に排他ロックを保持することができる。 LOCK_UN このプロセスが保持している既存のロックを解除する。 flock () を呼び出したときに、指定したロック種別と異なるロックが別プロセスによって 保持されていると、 flock () は停止 (block) され ... 操作 (operation) に LOCK_NB を論理和の形で指定する。 一つのファイルに共有ロックと排他ロックを同時に設定することはできない。 flock () によって作られるロックは、 オープンファイル記述 (open file description) ( open (2) 参照) と関連付けられる。 したがって、 ... 。 あるプロセスが open (2) (もしくは同様の方法) を使って同じファイルに対して 複数のファイルディスクリプターを取得した場合、 flock () はこれら複数のファイルディスクリプターを各々独立のものとして扱う。 これらのファイルディスクリプターの一つを使ってファイ ... ... ウトは直ちにキャンセルされる。 実行されるコマンドはタイムアウトの対象ではない。 例 (いくつかの仮想的なプログラムの呼び出し) flock /etc/passwd read-and-write-to-passwd flock --shared /etc/passwd just-read-something-from-passwd flock --timeout=0 /sys /us ... ... に示すフィールドを含む構造体へのポインターである (フィールドの順序は関係なく、構造体に他のフィールドがあってもよい)。 struct flock { ... short l_type; /* Type of lock: F_RDLCK, F_WRLCK, F_UNLCK */ short l_whence; /* How to interpret l_start: SEEK_SET, S ... 既存ロックの範囲と一致する場合以外では、 変換の過程で既存のロックの分割、縮小、結合が行われることがある)。 F_SETLK ( struct flock * ) ( l_type が F_RDLCK か F_WRLCK の場合は) ロックの獲得を、 ( F_UNLCK の場合は) ロックの解放を、 flock 構造体のフィールド ... POSIX では移植性が必要なアプリケーションでは、 これらの両方のエラーをチェックすることが必要としている。) F_SETLKW ( struct flock * ) F_SETLK と同様だが、こちらではそのファイルに対して衝突するロックが 適用されていた場合に、そのロックが解放されるのを待つ ... ... に示すフィールドを含む構造体へのポインターである (フィールドの順序は関係なく、構造体に他のフィールドがあってもよい)。 struct flock { ... short l_type; /* Type of lock: F_RDLCK, F_WRLCK, F_UNLCK */ short l_whence; /* How to interpret l_start: SEEK_SET, S ... 既存ロックの範囲と一致する場合以外では、 変換の過程で既存のロックの分割、縮小、結合が行われることがある)。 F_SETLK ( struct flock * ) ( l_type が F_RDLCK か F_WRLCK の場合は) ロックの獲得を、 ( F_UNLCK の場合は) ロックの解放を、 flock 構造体のフィールド ... POSIX では移植性が必要なアプリケーションでは、 これらの両方のエラーをチェックすることが必要としている。) F_SETLKW ( struct flock * ) F_SETLK と同様だが、こちらではそのファイルに対して衝突するロックが 適用されていた場合に、そのロックが解放されるのを待つ ... ... rom '' の 5 文字があったとき) 大なり記号 (``>'') がそれらの行頭に付加されます。 メールファイルはメールが追加されている間は flock (2) によって排他的にロックされます。 メールボックスがロックされている間、 user.lock が作成されますが、これは古い MUA との互 ... r/mail/user ユーザのメールボックスディレクトリ /var/mail/user.lock ユーザメールボックスのロックファイル 関連項目 mail (1), flock (2), getservbyname (3), comsat (8), sendmail (8) 警告 mail.local は、空行に続く "^From " 行のみをエスケープします。 "From ... ... 操作を行うとデッドロックが発生してしまう。 EINTR ロックの獲得を待っている間に、ハンドラーにより捕捉されたシグナルを 受信し、 flock () が中断された。 signal (7) 参照。 EINVAL cmd に無効な操作が指定された。 ENOLCK 非常に多くのセグメントロックが開かれ、ロッ ... を参照。 インターフェース 属性 値 lockf () Thread safety MT-Safe 準拠 POSIX.1-2001, POSIX.1-2008, SVr4. 関連項目 fcntl (2), flock (2) Linux カーネルソースの Documentation/filesystems ディレクトリにある locks.txt と mandatory-locking.txt (以前のカーネル ... ... になるまで待ち、 FILE オブジェクトをロックし、要求されて入出力を行い、 オブジェクトのロックを解除する。 (注: このロックは、 flock (2) や lockf (3) といった関数が行うロックとは全く無関係である。) これらのことはすべて C プログラマには見えない部分で行われ ... 入出力関数を使うこともできる。 例えば、 getc (3) や putc (3) の代わりに getc_unlocked (3) や putc_unlocked (3) を使用する。 flockfile () 関数は、 *filehandle が他のスレッドにロックされていな い状態になるまで待ったのち、現在のスレッドを *filehandle のオ ... ーナに設 定し、ロック数を加算する。 funlockfile () 関数は、ロック数を減算する。 ftrylockfile () 関数は flockfile () のブロッキングを行わない バージョンである。他のスレッドが *filehandle をロックしている時は 何も行わず、そうでない場 ... ... になるまで待ち、 FILE オブジェクトをロックし、要求されて入出力を行い、 オブジェクトのロックを解除する。 (注: このロックは、 flock (2) や lockf (3) といった関数が行うロックとは全く無関係である。) これらのことはすべて C プログラマには見えない部分で行われ ... 入出力関数を使うこともできる。 例えば、 getc (3) や putc (3) の代わりに getc_unlocked (3) や putc_unlocked (3) を使用する。 flockfile () 関数は、 *filehandle が他のスレッドにロックされていな い状態になるまで待ったのち、現在のスレッドを *filehandle のオ ... ーナに設 定し、ロック数を加算する。 funlockfile () 関数は、ロック数を減算する。 ftrylockfile () 関数は flockfile () のブロッキングを行わない バージョンである。他のスレッドが *filehandle をロックしている時は 何も行わず、そうでない場 ... ... になるまで待ち、 FILE オブジェクトをロックし、要求されて入出力を行い、 オブジェクトのロックを解除する。 (注: このロックは、 flock (2) や lockf (3) といった関数が行うロックとは全く無関係である。) これらのことはすべて C プログラマには見えない部分で行われ ... 入出力関数を使うこともできる。 例えば、 getc (3) や putc (3) の代わりに getc_unlocked (3) や putc_unlocked (3) を使用する。 flockfile () 関数は、 *filehandle が他のスレッドにロックされていな い状態になるまで待ったのち、現在のスレッドを *filehandle のオ ... ーナに設 定し、ロック数を加算する。 funlockfile () 関数は、ロック数を減算する。 ftrylockfile () 関数は flockfile () のブロッキングを行わない バージョンである。他のスレッドが *filehandle をロックしている時は 何も行わず、そうでない場 ... ... g (3) を通じてメッセージが記録される。 lpd は、そのファイルの印刷を見送るまでに最大 20 回まで再オープンを試みる。 lpd は、 flock (2) を使ってロックファイルへの排他的アクセスを提供し、 複数のデーモンが同時にアクティブになるのを防ぐ。 もし、不意にデーモ ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。