問題タブ [locks]

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.

0 投票する
1 に答える
117 参照

database - この特定のシナリオでは、どのような種類のデータベース ロックを使用する必要がありますか?

次の簡単なシナリオがあります。

3 台のコンピューターが映画館の予約テーブルを更新します。テーブル全体をロックするか、更新される座席に対応する行をロックする必要がありますか? ここで楽観的同時実行制御を検討できますか?

私は楽観的および悲観的な同時実行制御について調べていて、さまざまなロックについてつまずき、どのシナリオに最も適しているのか疑問に思っていました。

0 投票する
12 に答える
16128 参照

java - ロックは自動クローズ可能ですか?

Locks自動クローズ可能ですか?つまり、次の代わりに:

...言ってもいい:

... Java 7では?

0 投票する
2 に答える
1027 参照

linux - NFS3 の SVN サーバー「データベースがロックされています」

このエラーに関するトピックはたくさんありますが、私はまだ SVN サーバーの設定に問題があります。サーバーは Scientific Linux 6 で実行されており、リポジトリは NFS3 経由で SUNOS Storage サーバーに保存されるはずです。

「nolocks」オプションを使用してマウントすると問題が解決すると読みましたが、多くのユーザーがサーバーで同時に作業しているため、マウントしたくありません。ロックを削除すると、新しい問題が発生すると思います。

SVN がインストールされ、ローカル ファイルで作業していますが、離れた場所にリポジトリを作成しようとすると、ファイルは作成されますが、「データベースがロックされています」というエラーが表示され、リポジトリを使用できません。NFS で正常に動作するはずの fsfs システムを使用しています。

誰か私に別の選択肢がありますか?

0 投票する
1 に答える
177 参照

mysql - ライブ Magento ストアでデータベースの更新を実行しますか?

最近、Magento ストアの製品コードを変更する方法についていくつか質問しています。

答えは、phpmyadmin 内で次のコマンドを実行することでした。

それは完全に機能し、すべての製品コードを次のように変更しました。

に:

問題は; そのコマンドを実行するたびに、製品コードが正しく変更されますが、すべての製品が 404 になります。次に、インデックスを更新したところ、ロックされていることがわかりました。次のエラーが発生しました。

そのため、SSH 経由で次のコマンドを実行しました。

しかし、インデックス プロセスはまだ実行されません。現在、データベースを完全に台無しにしており、サポート技術者が問題を解決しようとするのを待っています. SQL コマンドを実行する前に作成したバックアップからデータベースを復元する可能性があります。

製品が 404 にならないように、Magento (1.5) のロックなどを台無しにすることなく、この SQL コマンドを実行する方法を考え出そうとしています。

0 投票する
1 に答える
604 参照

synchronization - vxWorks のリーダー書き込みロック

vxWorks でリーダー/ライター ロックを実装するにはどうすればよいですか?

リーダーライター ロック: http://en.wikipedia.org/wiki/Readers-writer_lock

0 投票する
1 に答える
1422 参照

c# - C#Interlocked.CompareExchangeの使用方法

私の目標は次のとおりです。

整数には特定の範囲があり、その範囲内のすべての整数をランダムにテストする必要があります。これには複数のスレッドを使用し、共有カウンターを使用して作業をスレッド間で均等に分割したいと思います。カウンターを開始値に設定し、すべてのスレッドに数値を取得させ、それを増やし、いくつかの計算を実行して、結果を返します。この共有カウンターは、ロックを使用してインクリメントする必要があります。そうしないと、テストする整数の範囲にギャップ/オーバーラップが発生するためです。

どこから始めたらいいのかわからない。私が12のスレッドに仕事をさせたいとしましょう、私はします:

startThread()計算に使用する方法です。

途中で手伝ってくれませんか。Interlockedクラスを使用する必要があることはわかっていますが、それだけです…。

0 投票する
1 に答える
1161 参照

c - ファイルのロック C プログラミング

ファイリングを使用してプログラムを作成しています。ファイルの書き込みを読み取る方法を知っています。 forking .cでファイルロックについて何もファイルしなかったので、小さな例またはチュートリアルを教えてください

ありがとう

0 投票する
2 に答える
2134 参照

java - 条件変数で待機しているスレッドを確認する方法は?

cond という名前の条件変数があります。

condで待機しているスレッドがある場合、trueまたはfalseを返すメソッドはありますか?

次のようなものが必要です:ブール型の cond.isAwaitingSetEmpty()

手伝ってくれてありがとう

0 投票する
5 に答える
3432 参照

python - 2 つの Python スレッドを一時停止し、3 つ目のスレッドが何かを実行している間 (ロックを使用して?)

私は並行プログラミングが初めてです。

3 つのタスクを繰り返し実行したいと思います。最初の 2 つは常に実行する必要があり、3 番目は約 1 時間ごとに実行する必要があります。最初の 2 つのタスクは並行して実行できますが、3 番目のタスクの実行中は常に一時停止したいと考えています。

これが私が試したもののスケルトンです:

このコードは、毎秒 f と ag を出力し、約 5 秒ごとに h を出力すると思います。ただし、実行すると、h が表示されるまでに約 12 f と 12 g かかります。3 番目のスレッドがループから除外されている間に、最初の 2 つのスレッドが常にロックを解放して再取得しているように見えます。

  1. 何故ですか?3 番目のスレッドが現在保持されているロックを取得しようとして解放された場合、1 番目または 2 番目のスレッドがすぐに再度取得するのではなく、すぐに取得に成功するべきではありませんか? 私はおそらく何かを誤解しています。
  2. 私が望むものを達成するための良い方法は何でしょうか?

注: time.sleep(1)with flock/glock ブロックからの呼び出しの移動は、この単純な例では機能しますが、スレッドがほとんどの時間を実際の操作に費やす実際のアプリケーションでは明らかに機能しません。ループ本体の各実行後に最初の 2 つのスレッドが 1 秒間スリープし、ロックが解除されても、3 番目のタスクは実行されません。

0 投票する
3 に答える
804 参照

objective-c - NSLock を使用する必要がありますか?

メインスレッドがユーザーが計算をキャンセルできるアラートを表示している間に、別のスレッドでいくつかの計算を行う iOS クラスがあります。計算スレッドは、メイン スレッドと計算スレッドの両方からアクセスできるいくつかのインスタンス変数を使用します。計算スレッドはこれらの変数を読み取るだけであり、計算スレッドが存在する間、メイン スレッドはこれらの変数を読み書きしません。

私の質問は、これらの変数をロックする必要があるのですか?