rxjava : cold publisher, hot publisher

This commit is contained in:
haerong22
2022-03-17 16:48:54 +09:00
parent bd2100f400
commit f1428b4944
8 changed files with 333 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
import io.reactivex.rxjava3.core.Flowable;
public class ColdPublisherEx {
public static void main(String[] args) {
Flowable<Integer> flowable = Flowable.just(1, 2, 3, 4);
// 구독시 처음부터 타임라인을 재구성하여 모든 데이터를 받을 수 있다.
flowable.subscribe(data -> System.out.println("data = " + data));
flowable.subscribe(data -> System.out.println("data = " + data));
}
}

View File

@@ -0,0 +1,18 @@
import io.reactivex.rxjava3.processors.PublishProcessor;
public class HotPublisherEx {
public static void main(String[] args) {
PublishProcessor<Integer> processor = PublishProcessor.create();
processor.subscribe(data -> System.out.println("subscribe1 = " + data));
processor.onNext(1);
processor.onNext(2);
// 구독한 시점 이후의 데이터만 받을 수 있다.
processor.subscribe(data -> System.out.println("subscribe2 = " + data));
processor.onNext(3);
processor.onNext(4);
}
}