Stream vs Flux

0

Czy ktoś mógłby mi wyjaśnić czy różni się Javovy Stream od Reactor Flux ? Szukałem informacji na ten temat i niby wiem, że Streamy są pull, a Flux jest push, ale w rzeczywistości nie mam pojęcia co to oznacza. Kiedy powinniśmy użyć klasy Stream, a kiedy Flux ? Jakie są korzyści jednego nad drugim ?

1

Najprościej - Streamy (java8) przetwarzanie danych synchronizczne.
Streamy reaktywne (Flux, RxJava Flowable etc) - przetwarzanie danych asynchroniczne.

0
jarekr000000 napisał(a):

Najprościej - Streamy (java8) przetwarzanie danych synchronizczne.
Streamy reaktywne (Flux, RxJava Flowable etc) - przetwarzanie danych asynchroniczne.

To jest najważniejsza różnica decydująca o tym czy wybrać jedno czy drugie ?

0

Nie tylko, reaktywne streamy obsługują backpressure, w przeciwieństwie do streamów z javy 8.

Poczytaj np. tutaj .

2
dobrywariat napisał(a):

To jest najważniejsza różnica decydująca o tym czy wybrać jedno czy drugie ?

Pytanie jest bez sensu. To nie Ty wybierasz Streamy - to streamy wybierają Ciebie.

Jak masz operacje asynchroniczne, architekturę non blocking itp. to nie bardzo Ci Streamy javowe pomogą.

Jak masz proste przetwarzanie listy to pchanie tam Reactive jest bez sensu.

Btw. Streamów z Java8 używam w zasadzie nigdy - jeśli już to vavr.io.

1 użytkowników online, w tym zalogowanych: 0, gości: 1