Sha256: b037acf77691ca22ecbc88592c138a732b7629755110a6a338551a58bbe23db1
Contents?: true
Size: 1.56 KB
Versions: 49
Compression:
Stored size: 1.56 KB
Contents
import { AsapAction } from './AsapAction'; import { AsapScheduler } from './AsapScheduler'; /** * * Asap Scheduler * * <span class="informal">Perform task as fast as it can be performed asynchronously</span> * * `asap` scheduler behaves the same as {@link async} scheduler when you use it to delay task * in time. If however you set delay to `0`, `asap` will wait for current synchronously executing * code to end and then it will try to execute given task as fast as possible. * * `asap` scheduler will do its best to minimize time between end of currently executing code * and start of scheduled task. This makes it best candidate for performing so called "deferring". * Traditionally this was achieved by calling `setTimeout(deferredTask, 0)`, but that technique involves * some (although minimal) unwanted delay. * * Note that using `asap` scheduler does not necessarily mean that your task will be first to process * after currently executing code. In particular, if some task was also scheduled with `asap` before, * that task will execute first. That being said, if you need to schedule task asynchronously, but * as soon as possible, `asap` scheduler is your best bet. * * @example <caption>Compare async and asap scheduler</caption> * * Rx.Scheduler.async.schedule(() => console.log('async')); // scheduling 'async' first... * Rx.Scheduler.asap.schedule(() => console.log('asap')); * * // Logs: * // "asap" * // "async" * // ... but 'asap' goes first! * * @static true * @name asap * @owner Scheduler */ export const asap = new AsapScheduler(AsapAction);
Version data entries
49 entries across 49 versions & 4 rubygems