You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Reactive Streams API prescribes that all processing of elements (onNext) or termination signals (onError, onComplete) MUST NOT block the Publisher.
However, there's no occurrence in the specification of the term "block". Moreover, in the rules about responsivity (2.2, 3.4, 3.5), only 3.5 says Subscription.cancel MUST respect the responsivity of its caller, while the others use RECOMMENDED/SHOULD.
Also, to avoid any confusion, I believe the binding words from RFC2119 must be avoided outside the rule tables.
Therefore I propose to change this to:
The Reactive Streams API prescribes that all processing of elements (onNext) or termination signals (onError, onComplete) should respect the responsivity of the Publisher [see 2.2].
For reference, replies from within #177 by @akarnokd:
"not block": sounds a bit harsh. It is supposed to indicate that one should avoid sleeping, waiting on an object or condition, because those can be written in a notification-like (i.e., push) fashion.
"block" may not have been the best word, and it should most definitely be explained, but the intent is that a Subscriber should not impede the progress of the Publisher from an execution PoV. I.e. the Subscriber should not starve the Publisher from CPU cycles.
The text was updated successfully, but these errors were encountered:
The section Asynchronous vs Synchronous Processing starts with the following sentence:
However, there's no occurrence in the specification of the term "block". Moreover, in the rules about responsivity (2.2, 3.4, 3.5), only 3.5 says Subscription.cancel MUST respect the responsivity of its caller, while the others use RECOMMENDED/SHOULD.
Also, to avoid any confusion, I believe the binding words from RFC2119 must be avoided outside the rule tables.
Therefore I propose to change this to:
For reference, replies from within #177 by @akarnokd:
and @viktorklang:
The text was updated successfully, but these errors were encountered: