dispatch queue와 동일하지만 RxSwift에서는 여러가지의 스케줄러가 이미 정의되어 있으며 대부분의 상황에서 사용 가능 하므로 개발자가 자신만의 스케쥴러를 생성할 일은 없을 것입니다.
ObserveOn
과 SubscribeOn
이 Schedulers로 작동되는 대표적인 두 연산자인데요!
SubscribeOn
: 시작할 스케쥴러를 결정ObserveOn
: 어느 스케줄러에서 observe할 것인지 결정
✨observeOn subscribeOn 차이
observeOn은 Observable이 아이템을 전파할 때 사용할 스레드를 지정하고
subscribeOn은 구독(subscribe)에서 사용할 스레드를 지정합니다.
직렬큐 : 분산 처리 시킨 작업을 다른 한 개의 쓰레드에서 처리하는 큐
동시큐 : 분산 처리 시킨 작업을 다른 여러개의 쓰레드에서 처리하는 큐
but, 여러 개의 직렬큐를 만들어 처리한 다면 각각의 직렬 큐 별로 하나의 쓰레드에 작업을 할당하지만 각각의 큐는 동시(Concurrent)에 동작합니다.
1) Main (Serial)
2) SerialDispatchQueue (Serial)
3) CurrentThread (Serial)
4) ConcurrentDispatchQueue (Concurrent)
5) OperationQueue (Concurrent)
6) Test