27 lines
982 B
JavaScript
27 lines
982 B
JavaScript
import { SubscribeOnObservable } from '../observable/SubscribeOnObservable';
|
|
/**
|
|
* Asynchronously subscribes Observers to this Observable on the specified IScheduler.
|
|
*
|
|
* <img src="./img/subscribeOn.png" width="100%">
|
|
*
|
|
* @param {Scheduler} scheduler - The IScheduler to perform subscription actions on.
|
|
* @return {Observable<T>} The source Observable modified so that its subscriptions happen on the specified IScheduler.
|
|
.
|
|
* @method subscribeOn
|
|
* @owner Observable
|
|
*/
|
|
export function subscribeOn(scheduler, delay = 0) {
|
|
return function subscribeOnOperatorFunction(source) {
|
|
return source.lift(new SubscribeOnOperator(scheduler, delay));
|
|
};
|
|
}
|
|
class SubscribeOnOperator {
|
|
constructor(scheduler, delay) {
|
|
this.scheduler = scheduler;
|
|
this.delay = delay;
|
|
}
|
|
call(subscriber, source) {
|
|
return new SubscribeOnObservable(source, this.delay, this.scheduler).subscribe(subscriber);
|
|
}
|
|
}
|
|
//# sourceMappingURL=subscribeOn.js.map
|