, как вы упомянули в заголовке вашего вопроса, первый пример является синхронным, поэтому вы получаете первое значение, оставаясь внутри метода .subscribe()
. Естественно, observer
, который должен иметь объект Subscription
, еще не был инициализирован.
Если вы хотите отписаться после получения одного значения, я бы предложил использовать .take(1)