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 asapScheduler} scheduler. * * ## Examples * Use async scheduler to delay task * ```ts * import { asyncScheduler } from 'rxjs'; * * const task = () => console.log('it works!'); * * asyncScheduler.schedule(task, 2000); * * // After 2 seconds logs: * // "it works!" * ``` * * Use async scheduler to repeat task in intervals * ```ts * import { asyncScheduler } from 'rxjs'; * * function task(state) { * console.log(state); * this.schedule(state + 1, 1000); // `this` references currently executing Action, * // which we reschedule with new state and delay * } * * asyncScheduler.schedule(task, 3000, 0); * * // Logs: * // 0 after 3s * // 1 after 4s * // 2 after 5s * // 3 after 6s * ``` */ export const asyncScheduler = new AsyncScheduler(AsyncAction); /** * @deprecated renamed. Use {@link asyncScheduler} */ export const async = asyncScheduler;
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
Action.ts | File | 1.28 KB | 0644 |
|
AnimationFrameAction.ts | File | 1.99 KB | 0644 |
|
AnimationFrameScheduler.ts | File | 756 B | 0644 |
|
AsapAction.ts | File | 1.96 KB | 0644 |
|
AsapScheduler.ts | File | 746 B | 0644 |
|
AsyncAction.ts | File | 4.8 KB | 0644 |
|
AsyncScheduler.ts | File | 1.93 KB | 0644 |
|
QueueAction.ts | File | 1.4 KB | 0644 |
|
QueueScheduler.ts | File | 107 B | 0644 |
|
VirtualTimeScheduler.ts | File | 2.99 KB | 0644 |
|
animationFrame.ts | File | 1.35 KB | 0644 |
|
asap.ts | File | 1.67 KB | 0644 |
|
async.ts | File | 1.5 KB | 0644 |
|
queue.ts | File | 2.03 KB | 0644 |
|