Я так понимаю ваш вопрос, что вы хотите опросить список ресурсов.
интервал (таймер) для таймерного опроса и takeUntil () / takeWhile () для завершения подписки может быть вашей вещью тогда.
let pollSubscriptions: Subscription = new Subscription()
let requestUrl = 'http://bestResourceever.com'
let polltime = 5000; // Timer for polling
this.addNewPoll(requestUrl, polltime);
addNewPoll(url, timer){
this.pollSubscriptions.add(
interval(timer).pipe(
switchMap(()=> this.http.get(url) ),
tap(data => this.writeDateSomewhere(data) ),
takeUntil( data => this.shouldPollingBeStopped(data) )
).subscribe()
)
}
Я добавил «pollSubscription.add ()» на тот случай, если вы хотите отписать сразу все подписки на опрос (this.pollSubscription.unsubscribe ())
С уважением