oef/node_modules/timers-browserify
2019-11-04 15:00:46 +01:00
..
.DS_Store First commit 2019-11-04 15:00:46 +01:00
CHANGELOG.md First commit 2019-11-04 15:00:46 +01:00
LICENSE.md First commit 2019-11-04 15:00:46 +01:00
main.js First commit 2019-11-04 15:00:46 +01:00
package.json First commit 2019-11-04 15:00:46 +01:00
README.md First commit 2019-11-04 15:00:46 +01:00

Overview

Adds support for the timers module to browserify.

Wait, isn't it already supported in the browser?

The public methods of the timers module are:

  • setTimeout(callback, delay, [arg], [...])
  • clearTimeout(timeoutId)
  • setInterval(callback, delay, [arg], [...])
  • clearInterval(intervalId)

and indeed, browsers support these already.

So, why does this exist?

The timers module also includes some private methods used in other built-in Node.js modules:

  • enroll(item, delay)
  • unenroll(item)
  • active(item)

These are used to efficiently support a large quantity of timers with the same timeouts by creating only a few timers under the covers.

Node.js also offers the immediate APIs, which aren't yet available cross-browser, so we polyfill those:

  • setImmediate(callback, [arg], [...])
  • clearImmediate(immediateId)

I need lots of timers and want to use linked list timers as Node.js does.

Linked lists are efficient when you have thousands (millions?) of timers with the same delay. Take a look at timers-browserify-full in this case.

License

MIT