wallet-core/node_modules/timers-browserify
2017-08-14 05:02:09 +02:00
..
.npmignore node_modules 2017-05-03 15:35:00 +02:00
CHANGELOG.md node_modules 2017-08-14 05:02:09 +02:00
LICENSE.md node_modules 2017-05-03 15:35:00 +02:00
main.js node_modules 2017-08-14 05:02:09 +02:00
package.json node_modules 2017-08-14 05:02:09 +02:00
README.md node_modules 2017-05-03 15:35:00 +02: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