開いているファイルをロックする。(バージョン4.74以降)
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