問題タブ [concurrency]
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.
java - 固定数のワーカー スレッドを使用して単純なスレッドを実装する方法
以下を実装する最も簡単で簡単な方法を探しています。
- メイン プログラムは、ワーカー スレッドをインスタンス化してタスクを実行します。
n
一度に実行できるのはタスクのみです。- に
n
達すると、実行中のスレッドの数が を下回るまでワーカーは開始されませんn
。
ruby-on-rails - Ruby on Rails でのスレッド化、並行性、およびフォークされたプロセスの現状はどのようなものですか?
Ruby on Rails は、マルチスレッドの要求応答をうまく処理できません。少なくとも、ActiveRecord はそうではありません。
同時にアクティブな要求応答が 1 つだけであるという概念は、完了するまでに時間がかかるシェル コマンドをフォークする Web アプリケーションを作成する場合に問題になる可能性があります。
この種の設定について、あなたの意見を聞かせてください。Rails は、一部のアプリケーションには適していないのでしょうか?
また、Ruby on Rails の同時実行性に関しては、現在どのような状況ですか? ベストプラクティスは何ですか。欠点に対する回避策はありますか?
database - MS Access データ アクセスの制限
現在、サードパーティ製品が情報を保存するために使用する Access データベースから行を取得できるようにしたいプロジェクトがあります。私の「エクスポート」プロセスと同時にこのデータベースにアクセスするユーザーは少数である可能性が高いため、データの整合性と同時アクセスについて少し心配しています。
.NET インポート プロセス (LINQ/ADO.NET/? を使用) で、他の誰かが行を保存しているときに MDB からデータを取得しようとすると、問題が発生する可能性がありますか? Access のロックはどのように機能しますか?
django - cherrypy はユーザースレッドをどのように処理しますか?
私はdjangoアプリに取り組んでおり、サーバーとしてcherrypyを使用しています。Cherrypy は、ページ ビューごとに新しいスレッドを作成します。これらのスレッド (django との対話を担当するスレッド) のすべてに、それらのいずれかからアクセスできるようにしたいと考えています。より具体的には、これらのスレッドのいずれかから、これらの各スレッドの thread_data にアクセスできるようにしたいと考えています。これは可能ですか?もしそうなら、どうすればいいですか?
.net - ThreadPool.QueueUserWorkItemがfalseを返す場合
MSDNは、メソッドが
メソッドが正常にキューに入れられた場合はtrue。作業項目がキューに入れられていない場合、NotSupportedExceptionがスローされます。
テストの目的で、メソッドを返す方法を教えてfalse
ください。それとも、それは単なる「次善の」クラス設計ですか?
c# - 非同期 WPF コマンド
注:完全なソースが必要な場合、この質問のコードはdeSleeperの一部です。
私がコマンドに望んでいたことの 1 つは、非同期操作用のベイクド デザインでした。コマンドの実行中にボタンを押して無効にし、完了したら戻ってくるようにしました。実際の作業は ThreadPool 作業項目で実行したかったのです。最後に、非同期処理中に発生したエラーを処理する方法が必要でした。
私の解決策は AsyncCommand でした:
質問は次のとおりです。これはすべて必要ですか?データバインディングの非同期サポートが組み込まれていることに気付きましたが、コマンドを実行しないのはなぜですか? おそらく、次の質問であるパラメーターの質問に関連しています。
java - Java 1.4 同期: メソッドの 1 つのインスタンスのみを実行できるようにします (非ブロッキング)?
翻訳ユーティリティを提案するクラスがあります。翻訳自体は 30 分ごとに再読み込みする必要があります。そのためにSpring Timerサポートを使用しています。基本的に、私のクラスは次のようになります。
loadTranslations() は実行にかなり時間がかかる可能性があるため、実行中も古い翻訳を利用できます。これは、翻訳をローカル Map にロードし、すべての翻訳がロードされたときに参照を変更することによって行われます。
私の問題は次のとおりです。スレッドがすでに翻訳をロードしているときに、2 番目のスレッドも実行しようとすると、2 番目の更新を開始せずに、それを検出してすぐに戻るようにするにはどうすればよいですか。
同期されたメソッドは、ロードをキューに入れるだけです...私はまだJava 1.4を使用しているため、java.util.concurrentはありません。
ご協力いただきありがとうございます !
c++ - C++ で任意の文字列をロックとして使用するにはどうすればよいですか?
への関数呼び出しの形式で要求を処理するマルチスレッド C++ プログラムがあるとしhandleRequest(string key)
ます。への各呼び出しhandleRequest
は個別のスレッドで発生し、 には任意の数の可能な値がありkey
ます。
次の動作が必要です。
- の同時呼び出し
handleRequest(key)
は、 の値が同じ場合にシリアル化されkey
ます。 - グローバルなシリアライゼーションは最小限に抑えられます。
の本体は次のhandleRequest
ようになります。
質問:必要な動作を得るためにどのように実装KeyLock
しますか?
単純な実装は、次のように開始できます。
...しかし、それには各リクエストの最初と最後にグローバル ロックが必要であり、リクエストLock
ごとに個別のオブジェクトを作成する必要があります。への呼び出し間の競合が高い場合はhandleRequest
問題にならない可能性がありますが、競合が少ない場合は多くのオーバーヘッドが発生する可能性があります。
concurrency - アプリケーション オブジェクトと同時実行の問題
このようないくつかのaspチュートリアルでは、次のパターンを観察します。
アプリケーション.ロック
'アプリケーションオブジェクトでいくつかのことを行います
アプリケーション.ロック解除
ただし、Web ページには複数のインスタンスを含めることができるため、明らかに並行性の問題があります。だから私の質問は次のとおりです。
オブジェクトがすでにロックされているときに、あるページをロックしようとするとどうなりますか?
アプリケーション オブジェクトがロックされているかどうかを検出する方法はありますか?
ロックされていないアプリケーション オブジェクトで作業する方が良いですか、それとも他の結果がありますか?
アプリケーション オブジェクトに関連するアクションが 1 つしかない場合はどうなるでしょうか。〜その場合、ロック/ロック解除する理由はありますか?