Encadernação bidirecional no RxSwift

Eu li o operador de ligação bidirecional no código de exemplo do RxSwift.

func <-> <T>(property: ControlProperty<T>, variable: Variable<T>) -> Disposable {
    let bindToUIDisposable = variable.asObservable()
        .bindTo(property)
    let bindToVariable = property
        .subscribe(onNext: { n in
            variable.value = n
        }, onCompleted:  {
            bindToUIDisposable.dispose()
        })

    return StableCompositeDisposable.create(bindToUIDisposable, bindToVariable)
}

Quandoproperty alterado, notificará a variável e definirá o valor da variável, enquanto o valor da variável estiver definido, notificará a propriedade. Eu acho que vai levar a loop infinito ...

questionAnswers(3)

yourAnswerToTheQuestion