問題タブ [rx-java2]

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 に答える
706 参照

rx-java - Vertx HttpClient と RxJava によるバック プレッシャー

「背圧システム」を作成するのに問題があります。Vertx HttpClient と RxJava を使用しています。外部サービスに対して 6000 のリクエストを行う必要があり、waitingForQueue がいっぱいになるのを避けるために、この外部サービスは送信ほど速く処理できないため、リクエストとレスポンスの間に遅延を置きます。

このジャーニーはバッチ プロセスとして機能するため、1 分かからなくても心配する必要はありません。

ここに私のコード

このメソッドは、このサブグループのリスト (6000) を渡す 24 時間ごとに実行される Observable 間隔から呼び出されます。

しかし、ログを確認した後、リクエスト間に 50 ミリ秒の遅延が見られません

ここに私のログの3つ

これを達成するために何をする必要があるか考えていますか?.

よろしく。

解決

より良い解決策があれば教えてconcatMapください。

0 投票する
0 に答える
508 参照

android - 失敗した観測可能なRxJava 2のみを再試行します

リスト内の一部のオブジェクトで失敗する可能性のある長時間実行タスクを実行しようとしていますが、再試行しましたが、オブザーバブルのリスト全体に再サブスクライブします。ネストされたサブスクリプションを実行できますが、間違っているようです。サブスクリプションをネストするよりも良い解決策はありますか?

これが私の実装です:

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

android - イベントをObservableに転送するために頻繁に呼び出されるコールバックメソッド?

だから私はカスタムスライダービューにこのリスナーを持っています。onSliderChanged(int percent)ユーザーがスライダーをスライドすると、ビューが呼び出されます。スライダーが変化したときにネットワーク呼び出しをしようとしていますが、スライド時にメソッドが頻繁に呼び出されるため、ネットワーク呼び出しを100万回行いたくありません。このリスナーのコールバックを Observable にするにはどうすればよいですか? オブザーバブルになると、デバウンスを使用して、特定の時間間隔の後にのみ更新できることを知っています。

やってみObservable.create()ましたが、コールバックメソッドを使用していて、それがどのように機能するかわかりません。私はKotlinとRxJava2を使用しています。

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

android - takeUntil 最適化されたキャッシュとネットワーク メソッドを Retrofit、RxJava、および Gson で使用する

RxJavaサーバーからデータを取得するためにのtakeUntil演算子を使用して、最適化されたキャッシュとネットワーク メソッドを実装しようとしています。API からの JSON 応答を解析するために Gson モデルを使用しています。

Gson モデルを使用しているため、サーバーからデータを取得する際に行き詰まります。返されたタイプは、Netwrok リクエストとディスク キャッシュの両方で一致しないためです。

いくつかの方法をテストしてきましたが、うまくいきませんでした。

ApiService.java

inetactor.java

インタラクター.java

キャッシュデータ

Gson モデル パーサー

RequestResponse.java

ありがとう :) 。

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

android - Android RxJava とオブザーバブルの連鎖

いくつかのオブザーバブルを連鎖させ、実行されたオブザーバブルに応じて何らかのアクションを実行しようとしています。しかし、私は奇妙な行動に直面しました。

この例では、ログは 2 秒ごとに表示されますが、ビューに関するすべての変更は、最後の監視対象が終了するときに行われます。

AndroidScheduler.mainThread() の動作だと思います。この行を削除して、このようなビューで変更をラップすると

行動が正しくなります。誰かがこの動作を説明し、この問題を解決する正しい方法を提案できますか?

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

rx-java - RxJava2: 最初にサブスクライブしたオブザーバーと最後にサブスクライブ解除したオブザーバーの PublishProcessor コールバック

PublishProcessor<?>複数のオブザーバーにサービスを提供するためにa を使用します。最初のオブザーバーがいつ購読され、最後のオブザーバーがいつ破棄されるかを知る方法はありますか?