vitthal.kumar.dhanuka:
私は、フラックスが私のユースケースに最適なオペレータ確認のBlockingQueueから作成ではなく、原子炉を実現しようとしていますか?
私は応答がREST呼び出しを取得するために、応答としてのBlockingQueueからのメッセージを発する維持する必要のあるフラックスでストリーミングRESTエンドポイントを、作成しています。
私はすでにフォーラムやドキュメントを試してみましたし、唯一のフラックスは、反復可能なコレクションや反応性のデータ・ソースが、任意のBlockingQueueからなしの例から開始見つけることができます。
bsideup:
あなたは試すことができフラックス#が発生し、キュー#覗きます。ちょうどその心に留めておくpeek
返されnull
、キューが空の場合、それはで使用することはできませんonNext
。
何かのようなもの:
Flux.generate(sink -> {
val element = queue.peek();
if (element == null) {
sink.complete();
} else {
sink.next(element);
}
});
あり、フラックス#repeatWhenのあなたは、それが空であると見なされた後にキューに再加入し、例えばとしたい場合には、オペレータは、:
flux.repeatWhen(it -> it.delayElements(ofSeconds(1)))