Giriş
Cold publisher yaratır. Yani her yeni subscriber veriyi tekrar alır.
Şöyle yaparız
Örnek - delayElements ile KullanımFlux<Integer> flux = Flux.just(1);//Observer 1flux.subscribe(i -> System.out.println("Observer-1 : " + i));//Observer 2flux.subscribe(i -> System.out.println("Observer-2 : " + i));//OutputObserver-1 : 1Observer-2 : 1
Şöyle yaparız. Burada Flux elemanları biraz gecikmeyle veriyor.
System.out.println("Starts");//flux emits one element per secondFlux<Character> flux = Flux.just('a', 'b', 'c', 'd').delayElements(Duration.ofSeconds(1));//Observer 1 - takes 500ms to processflux.map(Character::toUpperCase).subscribe(i -> {sleep(500);System.out.println("Observer-1 : " + i);});//Observer 2 - process immediatelyflux.subscribe(i -> System.out.println("Observer-2 : " + i));System.out.println("Ends");StartsEndsObserver-2 : aObserver-1 : AObserver-2 : bObserver-1 : BObserver-2 : cObserver-2 : dObserver-1 : CObserver-1 : D
Hiç yorum yok:
Yorum Gönder