This was probably our most intense chapter yet, but it provides a turning point in your proficiency as an RxJava developer as well as a master of concurrency! We covered the different schedulers available in RxJava, as well as ones available in other libraries such as RxJavaFX and RxAndroid. The subscribeOn() operator is used to suggest to the upstream in an Observable chain which Scheduler to push emissions on. observeOn() switches emissions to a different Scheduler at that point in the Observable chain and uses that Scheduler downstream. You can use these two operators in conjunction with flatMap() to create powerful parallelization patterns so that you can fully utilize your multi-CPU power. We finally covered unsubscribeOn(), which helps us to specify a different Scheduler to dispose of operations on, preventing subtle hang-ups on threads we want to keep free and available...
-
Book Overview & Buying
-
Table Of Contents
Learning RxJava - Second Edition
By :
Learning RxJava
By:
Overview of this book
RxJava is not just a popular library for building asynchronous and event-based applications; it also enables you to create a cleaner and more readable code base. In this book, you’ll cover the core fundamentals of reactive programming and learn how to design and implement reactive libraries and applications.
Learning RxJava will help you understand how reactive programming works and guide you in writing your first example in reactive code. You’ll get to grips with the workings of Observable and Subscriber, and see how they are used in different contexts using real-world use cases. The book will also take you through multicasting and caching to help prevent redundant work with multiple Observers. You’ll then learn how to create your own RxJava operators by reusing reactive logic. As you advance, you’ll explore effective tools and libraries to test and debug RxJava code. Finally, you’ll delve into RxAndroid extensions and use Kotlin features to streamline your Android apps.
By the end of this book, you'll become proficient in writing reactive code in Java and Kotlin to build concurrent applications, including Android applications.
Table of Contents (22 chapters)
Preface
Section 1: Foundations of Reactive Programming in Java
Thinking Reactively
Observable and Observer
Basic Operators
Section 2: Reactive Operators
Combining Observables
Multicasting, Replaying, and Caching
Concurrency and Parallelization
Switching, Throttling, Windowing, and Buffering
Flowable and Backpressure
Transformers and Custom Operators
Section 3: Integration of RxJava applications
Testing and Debugging
RxJava on Android
Using RxJava for Kotlin
Other Books You May Enjoy
Appendix A: Introducing Lambda Expressions
Appendix B: Functional Types
Appendix C: Mixing Object-Oriented and Reactive Programming
Appendix D: Materializing and Dematerializing
Appendix E: Understanding Schedulers