fun-dispatcher
TypeScript icon, indicating that this package has built-in type declarations

1.2.6 • Public • Published

codecov

fun-dispatcher

Tiny ES6 class to run functions after a given delay. Uses just one timer at any time and setImmediate to execute functions.

Written in Typescript, 100% test coverage, targeting current LTS Node.JS

Example:

const { Scheduler } = require('fun-dispatcher');

const fd = new Scheduler();

fd.schedule('task1', () => { console.log('Will run after about 600ms') }, 600);
fd.schedule('task2', () => {
    console.log('Tasks can be cancelled by id');
    fd.delete('task1')
}, 400)

// can forcefully execute all tasks
fd.flush();
// or just next task in line waiting for be executed
fd.runNext()

// Scheduler extends native Map class, so, all methods are available
// like .delete to unschedule task or iteration
for (const [task, { delay }] of fd) {
    console.log('Task `%s` was scheduled with original delay of %d ms', task, delay);
}

Package Sidebar

Install

npm i fun-dispatcher

Weekly Downloads

262

Version

1.2.6

License

MIT

Unpacked Size

7.78 kB

Total Files

5

Last publish

Collaborators

  • tinovyatkin