There is an approach with schedulers to do recursive scheduling. You can see examples here:

- https://github.com/Netflix/RxJava/blob/master/rxjava-core/src/test/java/rx/SchedulersTest.java#L292
- https://github.com/Netflix/RxJava/blob/master/rxjava-core/src/test/java/rx/SchedulersTest.java#L326