본문 바로가기
반응형

분류 전체보기95

[RxJava] 생산자와 소비자, 데이터 스트림이란? (Observable, Observer, Flowable, Subscriber) 이번 글을 자주 나오는데 자꾸 헷갈려서 정확한 개념 정리를 위해 만들게 되었습니다 저만 헷갈린 거 아니죠?ㅎ;; 먼저 RxJava는 기본적으로 데이터를 만들고 발행하는 생산자와 발행된 데이터를 받고 처리하는 소비자로 구성되어 있습니다 생산자는 데이터 스트림의 데이터들을 발행하는 역할을 합니다, 생산자를 소비자가 구독하게 되어 생산자가 발행하는 데이터를 소비자가 받을 수 있게 됩니다 그럼 여기서 데이터 스트림과 소비자는 무엇일까요? 먼저 데이터 스트림은 데이터나 이벤트가 들어오는 통로입니다 (데이터가 흐르는 강이라고 비유할 수 있겠네요) 소비자는 말 그대로 생산자의 데이터를 사용하는 주체입니다 이름 내용 생산자 데이터 스트림의 데이터를 발행하는 역할 소비자 생산자의 데이터를 사용하는 주체 데이터 스트림 데.. 2022. 3. 29.
RxJava, RxAndroid Scheduler에 대해 알아보자 Schedulars 란? 스케줄러(Schedular)란 Observable, Operator(연산자), Subscriber이 수행하는 스레드를 결정해주는 것입니다 하지만 일부 연산자들은 자체적으로 어떤 스케줄러에서 사용할지 지정하기 때문에 모든 연산자들의 스케줄러를 지정해줄 수 있는 건 아닙니다 실제로 코드에서는 subscribeOn, observeOn 연산자로 사용 가능합니다 subscribeOn 이란? 구독에서 사용할 스레드를 지정합니다, observable의 스케줄러를 정해주기 위해 사용할 수 있습니다 observeOn 이란? 추가적인 연산자에 대한 작업 스레드를 정해주기 위해 사용할 수 있습니다 RxJava의 스케줄러 종류는? 생성 방법 내용 Schdulers.io() I/O 처리 작업을 할 때 .. 2022. 3. 29.
[RxJava] Observable 생성 연산자(Operators) Observable 생성 연산자 또는 Operator는 말 그대로 Observable을 생성하는 연산자입니다 공식문서에서는 다음과 같이 설명하고 있습니다 Creating Observables Operators that originate new Observables. 오늘은 생성자 중 어떤 연산자들이 있는지 알아보도록 하겠습니다 create 연산자 함수 내부에서 emitter가 직접 onNext, onComplete, onError 등으로 데이터를 전달 가능한 연산자입니다 val mListNum = mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) fun createOperator() : Observable{ return Observable.create(Obse.. 2022. 3. 28.
[RxJava] Observable, Single, Maybe, Completable 이란? 안녕하세요 오늘은 Rxjava의 생산자(Observable, Single, Maybe, Completable)에 관해 알아보도록 하겠습니다 Observable 개념 Observable은 데이터 흐름에 맞게 알림을 보내줘 구독한 Observer가 데이터를 사용할 수 있도록 해줍니다 발생 이벤트 onNext() : 하나씩 순차적으로 데이터를 발행한다 onComplete() : 데이터 발행이 끝났을 때 호출된다 onError() : 오류가 발생했을 때 호출된다 코드 fun createObservable() : Observable { return Observable.create{ emitter -> try { if (!emitter.isDisposed){ for (i in 0..100){ emitter.onNe.. 2022. 3. 24.
반응형