Есть ли способ использовать противодавление для не Java-подписчика (например, некоторые JS lib)?
Для этого издателя
Flux.range(1, 100)
и этого подписчика:
public class SystemOutBackpressureSubscriber<T> extends BaseSubscriber<T> {
private int delay;
public SystemOutBackpressureSubscriber(int delay) {
this.delay = delay;
}
public void hookOnSubscribe(Subscription subscription) {
request(1);
}
public void hookOnNext(T value) {
System.out.println(value);
if(delay != 0) {
try {
Thread.sleep(delay);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
request(1);
}
}
, если delay == 0
все номера напечатаны одновременно, но если delay != 0
, перед паузойкаждый номер напечатан. Есть ли способ сделать то же самое, но с JS? Во всех примерах в интернете, на которые я смотрел, клиент JS может только слушать поток событий. Если контроллер Rest возвращает производителя, например Flux.range(1, 100)
, возможно ли изменить частоту событий на клиенте?