問題タブ [flock]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 画像をflock()する方法は?
画像をflock()しようとしています。
現在、私は以下を使用しています
GDライブラリのファイルハンドルがflockでは無効なようです。画像にアクセスしてファイルを群がらせるにはどうすればよいですか?
php - PHPはファイルがflock()でロックされているかどうかをチェックしますか?
fopen()
ファイルが存在するが、現在は?でロックされている場合は失敗しますLOCK_EX
。
または、ロックを開いてから、ロックを設定して、ロックがすでに存在するかどうかを確認する必要がありますか?
私もそのflock()
意志を読みました。
ロックが無期限に取得されるまで、またはスクリプトがタイムアウトするまで、[スクリプト]を一時停止します
もしそうなら、この「一時停止」はバイパスすることができますか?
python - Pythonのfcntl.flock関数は、ファイルアクセスのスレッドレベルのロックを提供しますか?
Pythonのfcntモジュールは、ファイルロックを証明するために[flock][1]と呼ばれるメソッドを提供します。説明は次のとおりです。
ファイル記述子fdに対してロック操作opを実行します(fileno()メソッドを提供するファイルオブジェクトも受け入れられます)。詳細については、Unixのマニュアルflock(2)を参照してください。(一部のシステムでは、この関数はfcntl()を使用してエミュレートされます。)
flockのlinuxmanページを検索すると、クロスプロセスロックのみが参照されます。次に例を示します。
互換性のないロックが別のプロセスによって保持されている場合、flock()の呼び出しがブロックされることがあります。非ブロッキング要求を行うには、上記の操作のいずれかにLOCK_NB(ORingによる)を含めます。
だから私の質問は:flock()はスレッドセーフなロックを提供し、同じプロセス内の複数のスレッドと異なるプロセスからのスレッドをロックしますか?
[1]:http ://docs.python.org/library/fcntl.html#fcntl.flockfunctionはfcntl()を使用してエミュレートされます。)
python - flock() 関数に問題がある
flock()
特にpythonでどのように機能するかについて質問があります。シリアル接続を開くモジュールがあります (経由os.open()
)。このスレッドを安全にする必要があります。を使用して同じモジュールで作業するときにスレッドセーフにするのは簡単threading.Lock()
ですが、モジュールが別の場所からインポートされると壊れます。
を使用することを考えてflock()
いましたが、 flock がどのように機能するかについて十分な情報を見つけるのに苦労しています。ファイルが閉じられると、 flock() がファイルのロックを解除することを読みました。しかし、Python がクラッシュした場合にファイルを開いたままにする状況はありますか?
が設定されている場合、ロックされたファイルの使用を正確に許可するものは何LOCK_EX
ですか? ファイルをロックしたモジュールだけですか?最初に実行されたスクリプトからインポートされたモジュールはありますか?
perl - Perlスクリプトのコピーが一度に1つだけ実行されていることを確認するにはどうすればよいですか?
Perlスクリプトのコピーが一度に1つだけ実行されていることを確認する必要があります。ここでの提案によると、私はチェックを行うためにサブを書きました:
しかし、それは機能しません。何が問題になる可能性がありますか?
php - PHP Flock とファイルのアップロード
互いに独立した異なるスクリプトで実行されている 2 つのプロセスがあります。
- PHP #1 スクリプトは、ファイルのファイル名を読み取り、それを DB に書き込みます
- PHP #2 スクリプトがファイルをアップロードします
スクリプト #2 がファイルのアップロードを完全に完了した場合にのみ実行される 3 番目のスクリプト (これも独立) を作成したいと思います。
ファイルがロックされているかどうかを判断するために、PHP の flock 関数を使用することを考えています。スクリプト #3 には、ファイルのロックが解除されているかどうかを確認し、ロックが解除されている場合は続行するために、タイマーに設定されたある種の群れチェック機能が含まれている必要があると思います。
注: スクリプト #3 は、チェックを実行するファイル名を認識します。
何か案は?ファイルを連鎖できればもっと簡単ですが、ファイルは独立して実行されます。
php - file()は読み取り時にファイルをロックしますか?
私はfile()を使用して、タブ付きの配列のようなファイルを読み取ります。ファイルをロックしたいのですが、ファイルに対してflock()が機能していないようです。これを行うことは可能ですか?もしそうなら、どのように?そうでない場合、file()はファイルを最初からロックし、潜在的な共有の問題を軽減しますか?
php - LOCK_NB 無視
このコードを 2 回実行する:
常に「書かれた」という出力が得られます
がスキップされたことを意味し、LOCK_NB
手がかりがあれば (winbdows と unix の両方で)
編集 (2012-03-29 まだ修正されていません): https://bugs.php.net/bug.php?id=54453&edit=3 PHP バグ #54453
node.js - node.jsでflockを呼び出しますか?
node.jsスクリプトを実行するcronジョブがあります。
flockを使用してファイルをロックし、cronジョブが重複しないようにします。
ファイルロックを行うための良いモジュールはありますか?
または、子プロセスでそれを呼び出す必要がありますか?
または、ファイルロックを行うべきではありませんか?
申し訳ありませんが、私はこれに不慣れで、ファイルロックがノードのような非同期環境に適しているかどうかわかりません。ありがとう
php - 群れによるデッドロックの防止
忙しいサイトでのファイル書き込みをシミュレートしようとしています。私は次のコードを書きましたが、最終的にはコンピューターがフリーズします。
LOCK_NBはWindowsでは動作しないため、使用できません。上記のコードを同時に実行するプロセスが13未満の場合、コードは正常に機能します。このデッドロック状態にどのように対処しますか?