So, up until now, you have learned the basics of reactive programming. You learned about Observable, Observers, and Subjects, as well as backpressure, Flowable, processors, and operators. Now, it's time for us to learn some other new topics in reactive programming, probably the most important ones—concurrency and parallel processing.
A popular misconception regarding reactive programming is that reactive programming is multi-threaded by default. The truth is actually that RxKotlin works on a single thread by default, although it provides us with loads of operators to implement multi-threading as per our business logic and requirements with ease.
In this chapter, we will cover the following topics:
- Introduction to concurrency
- The subscribeOn() and observeOn() operator
- Parallelization