Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doubt about the terms Upstream vs Downstream #5022

Closed
kennedyoliveira opened this issue Jan 26, 2017 · 3 comments
Closed

Doubt about the terms Upstream vs Downstream #5022

kennedyoliveira opened this issue Jan 26, 2017 · 3 comments
Labels

Comments

@kennedyoliveira
Copy link

Hello everyone,

i'm confused with the terms upstream and downstream, and hope someone could describe better who is who, and maybe illustrate with some examples?

For example, the documentation about zipWith in a Flowable:

The operator expects backpressure from the sources and honors backpressure from the downstream. (I.e., zipping with interval(long, TimeUnit) may result in MissingBackpressureException, use one of the onBackpressureX to handle similar, backpressure-ignoring sources.

How do i interpret it? The downstream is the source i'm zipping (The parameter of zipWith) and the upstream is the Flowable i'm calling zipWith?

@kennedyoliveira kennedyoliveira changed the title [Question] Doubt about the terms [Question] Doubt about the terms Upstream vs Downstream Jan 26, 2017
@akarnokd akarnokd changed the title [Question] Doubt about the terms Upstream vs Downstream Doubt about the terms Upstream vs Downstream Jan 26, 2017
@akarnokd
Copy link
Member

Let me illustrate it:

           upstream                           downstream
source <------------- operator (parameters) -------------> consumer/further operators

Some operators have multiple upstreams such as zipWith which is an instance convenience for zip(upstream1, upstream2, func2).

@kennedyoliveira
Copy link
Author

Thank you @akarnokd, you made it very clear.

@keshavvgarg
Copy link

@akarnokd, What does the arrow symbol apply here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants