Exploring Observables and Observers
In this chapter, we will go into detail on observables: how to create them, how to subscribe to them, how to handle their errors, and how to use them with AsyncIO. In the first part of this chapter, we will describe all of the possible ways to create observables, from existing objects, iterable objects, or custom code logic. Each time a new observable is needed, one of these methods is best for the situation.
In the second part of this chapter, we will explain another important notion of ReactiveX: hot and cold observables. Knowing whether an observable is hot or cold is the key to using it correctly. The third part of this chapter will cover the different ways to listen to an observable and how to deal with errors. Finally, the last part will illustrate how observables can cohabit with AsyncIO and how to bridge futures and observables. This is a frequent requirement when writing drivers based on AsyncIO packages.
The following topics will be covered in this chapter:
- Creating observables
- Hot and cold observables
- Subscription and disposal
- Error handling
- Observables and AsyncIO