Reactive Streams · interview question
In the context of Reactive Streams, why is it important for a Publisher to adhere to the rule of signaling onComplete() or onError() only once?
Multiple choiceMediumchapter-19-curatedpremiumreactive-streamspublisher-and-subscriber
Answer and explanation
Correct answer
D. To ensure the Subscriber can manage its resources effectively
Why
The Reactive Streams specification requires a Publisher to signal onComplete() or onError() exactly once to ensure predictable and reliable behavior. If a Publisher signals completion or error multiple times, it can lead to resource mismanagement or inconsistent states in the Subscriber, violating the reactive contract.
Test yourself on Reactive Streams
A free test with instant, explained results. No account needed.
More Reactive Streams questions
- Why is it essential to avoid legacy JDBC in a reactive WebFlux application?
- What would be the effect of calling request(Long.MAX_VALUE) on a Subscription?
- Why does a Subscriber in the Reactive Streams specification matter in this design?
- How would you explain a key difference between WebFlux and virtual threads for handling concurrency in an interview?
- Which method in a Subscriber handles the completion signal from a Publisher?
- How do Virtual Threads in Project Loom aim to simplify concurrent programming compared to WebFlux?