3

flock()メソッドを使用してディレクトリのアドバイザリ ロックを取得し、別のプロセスが同じディレクトリに同時にアクセスできないようにしています。ファイル ハンドルを操作するためflock()、最初にディレクトリのハンドルを開く必要があります。

fopen('.', 'r');

ただし、これは Windows では機能しません。

fopen(.): ストリームを開けませんでした: 権限が拒否されました

Windows で同じことを行う方法はありますか、それともこのプラットフォームの制限ですか?

4

1 に答える 1

0

ファイル システム ドライバーなしで Windows でできるとは思わないでください。

ただし、ファイルを参照として使用してみてください。というフォルダにファイルを作成し、.lockerロック/ロック解除します。ロックされている場合は、フォルダーに触れてはならないことを意味します...それ以外の場合。

または...データベースを使用して、同時にアクセス可能なデータを保存します。ファイル ディスクの操作は非常に遅くなります。これは、サイトのパフォーマンスのボトルネックになる可能性があります。

于 2013-07-16T13:54:58.190 に答える