# filelock

開いているファイルをロックする。

    filelock <file handle> [<timeout>]

## 解説

すでに開いているファイルハンドル <file handle> を指定すると、ファイル全体をロックする。 ロック中、他のプロセスからの当該ファイルへのアクセスはエラーとなる。
引数 <timeout> の意味については下記のとおり。

<timeout> | 説明
0 | ファイルがすでにロックされていたら、即座にエラーを返す。
省略 | ファイルがすでにロックされていたら、解除されるまで無限に待つ。
Value | ファイルがすでにロックされていたら、解除されるまで最大 Value 秒待つ。タイムアウトしたらエラーを返す。

ロックに成功するとシステム変数 result が 0 に、失敗すると 1 となる。

## 例

    fileopen fhandle 'test.txt' 0
    filelock fhandle
    if result!=0 then
    	messagebox 'error' 'hoge'
    endif
    filewrite fhandle 'sample'
    pause 60
    fileunlock fhandle
    if result!=0 then
    	messagebox 'error' 'hoge'
    endif
    fileclose fhandle

## 参照

- fileunlock