Skip to content

Combining Operators : Merge

Devrath edited this page Dec 29, 2023 · 1 revision

download (1)

What is the Merge operator ?

  • Here the emissions are asynchronous, meaning emissions are emitted as soon as one of the emissions are available.

Code

    private val observableMerge1 = Observable.interval(1, TimeUnit.SECONDS).take(3)
    private val observableMerge2 = Observable.interval(2, TimeUnit.SECONDS).take(3)

    // Merging the two Observables
    private val mergedObservable = Observable.merge(observableMerge1, observableMerge2)

    fun merge() {
        // Subscribing to the merged Observable
        mergedObservable.subscribeBy(
            onNext = { value -> println("Received: $value") },
            onError = { error -> println("Error: $error") },
            onComplete = { println("Merging completed") }
        )
    }

Output

Received: 0
Received: 0
Received: 1
Received: 2
Received: 1
Received: 2
Merging completed

Clone this wiki locally