如何处理从Publisher
并行订阅的数据?
Project Reactor
中呼叫订阅时,我只得到了一块数据。如何“全部沥干”?将每个数据块转换为任务并将其提交给Executor
。转换器可能如下所示:
class Converter implements Subscriber<T> {
final Executor executor;
Subscription subscription;
Converter(Executor executor) {
this.executor = executor;
}
@Override
public void onSubscribe(Subscription s) {
subscription = s;
s.request(1);
}
@Override
public void onNext(T data) {
executor.execute(()->process(data));
subscription.request(1);
}
...
void process(T o) {
...
}
}