関数
dio_fcntl()
は、ファイル記述子
fd
において
cmd
で指定 された処理を行います。いくつかのコマンドでは、オプションの引数
args
の指定が必要となります。
cmd
がF_SETLKまたはF_SETLLWの場合、
arg
は連想配列で、以下のキーを有します。
"start" - ロック開始場所からのオフセット
"length" - ロック領域の大きさ。0はファイル終端を意味します。
"wenth" - l_startの相対位置指定: SEEK_SET, SEEK_END,
SEEK_CUR のどれかとします。
"type" - ロックの種類: F_RDLCK (読み込みロック), F_WRLCK
(書き込みロック), F_UNLCK (ロック解除)のどれかとします。
cmd
は以下の処理のどれかとします。
F_SETLK - ロックは設定またはクリアされます。lockが他の誰かに設
定されている場合、
dio_fcntl()
は-1を返します。
F_SETLKW - F_SETLKと似ていますが、ロックが他の誰かに設定されて いる場合、
dio_fcntl()
はそのロックが解放され るまで待ちます。
F_GETLK -
dio_fcntl()
は、他の誰かがロックを 妨げる場合、(上記の)連想配列を返します。妨げるものがない場合、
キー"type"はF_UNLCKに設定されます。
F_DUPFD -
arg
以上で最小の数値の利用可能 なファイル記述子を探して返します。