Sha256: 8590ebc370a36c4d57db111a4da99d702d4e4d752fc793673a95ceb0c5cdacc2
Contents?: true
Size: 1.38 KB
Versions: 49
Compression:
Stored size: 1.38 KB
Contents
import { AsyncAction } from './AsyncAction'; import { AsyncScheduler } from './AsyncScheduler'; /** * * Async Scheduler * * <span class="informal">Schedule task as if you used setTimeout(task, duration)</span> * * `async` scheduler schedules tasks asynchronously, by putting them on the JavaScript * event loop queue. It is best used to delay tasks in time or to schedule tasks repeating * in intervals. * * If you just want to "defer" task, that is to perform it right after currently * executing synchronous code ends (commonly achieved by `setTimeout(deferredTask, 0)`), * better choice will be the {@link asap} scheduler. * * @example <caption>Use async scheduler to delay task</caption> * const task = () => console.log('it works!'); * * Rx.Scheduler.async.schedule(task, 2000); * * // After 2 seconds logs: * // "it works!" * * * @example <caption>Use async scheduler to repeat task in intervals</caption> * function task(state) { * console.log(state); * this.schedule(state + 1, 1000); // `this` references currently executing Action, * // which we reschedule with new state and delay * } * * Rx.Scheduler.async.schedule(task, 3000, 0); * * // Logs: * // 0 after 3s * // 1 after 4s * // 2 after 5s * // 3 after 6s * * @static true * @name async * @owner Scheduler */ export const async = new AsyncScheduler(AsyncAction);
Version data entries
49 entries across 49 versions & 4 rubygems