問題タブ [cyclicbarrier]
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 - CyclicBarrier 時間を無駄にする
並列アルゴリズムを実装しています。CyclicBarrier がなければ、シーケンシャル時間の半分で作業を完了できます。CyclicBarrier を使用すると、最大 100 倍の時間がかかります。スレッド呼び出しとスレッド関数を含めて、何が起こっているかを確認し、私を助けようとすることができます. CyclicBarrier は再利用され、毎回新しいスレッドが生成されます。何らかの理由で、TRY(barrier.await;) ビットが長時間回転しています。
java - サーバーとクライアント間の進行中の通信のための CyclicBarriers の使用
サーバーとクライアント間の通信用にソケットをセットアップし、サーバー上で複数のクライアント接続用にスレッドを実行しています。さらに、サーバーとクライアントの間でデータ用にバイト配列を送信していますが、循環バリアを実装して、サーバーが特定の数のクライアントが接続するのを待ってから、各クライアントに異なるメッセージを送信することを考えています。
この通信と待機は継続する必要があります。たとえば、クライアント接続のこのしきい値が確立されてメッセージが送信されると、サーバーは各クライアントからメッセージが戻ってくるのを再び待機する必要があります。おそらく別のメッセージです。これは少なくとも数回の反復で継続する必要があります。このプロセスに循環バリアを実装すると、このプロセスの最適な解決策を見つけることができるのでしょうか?
これは循環バリアの意図された使用ですか、それとも私のアイデアに代わるより良い方法がありますか?
簡単にするために、2 つのクライアントが接続するのを待つつもりです。また、起こりうる障害に対処するために強制されるタイムアウト条件もあります。
java - ここで CyclicBarrier.await(int timeout,TimeUnit unit) が TimeOutException をスローしなかったのはなぜですか?
口で言うだけなら簡単です。コードを表示します。
MyCyclicBarrier.java
TestCyclicbarrier.java
出力:
ネットでずっと探しています。しかし、同様の答えはありません。助けてください、またはいくつかのアイデアを提供してみてください! そして、私は学び始めたところCyclicBarrier
です。
私は誤解したのだろうかCyclicBarrier.await(int timeout,TimeUnit unit)
。スレッド 0 から 3 は、すでに 2 秒かかるバリア ポイントに到達しています。同時に、2 秒待機した後に最後のスレッドが開始されました。ここに質問があります: なぜここでCyclicBarrier.await(int timeout, TimeUnit unit)
投げなかったのTimeOutException
ですか?
java - CyclicBarrier のバリア アクションからの出力へのアクセス
CyclicBarrier でバリア アクションの出力を取得/アクセスする方法について質問があります。
ブログのリンク
コード
ans
メインメソッドでサイクリックバリアアクションの値を取得する方法を教えてください。