Reschedulable setInterval for node.js.
var reInterval = require('reInterval');
var inter = reInterval(function () {
console.log('this should be called after 13s');
}, 10 * 1000);
// This will reset/reschedule the interval after 3 seconds, therefore
// the interval callback won't be called for at least 13 seconds.
setTimeout(function () {
inter.reschedule(10 * 1000);
}, 3 * 1000);
###reInterval(callback, interval[, param1, param2, ...])
This is exactly like setInterval.
Arguments:
callback
: The callback to be executed repeatedly.interval
: The number of milliseconds (thousandths of a second) that thereInterval()
function should wait before each call tocallback
.param1, param2, ...
: (OPTIONAL) These arguments are passed to thecallback
function.
####returns an interval
object with the following methods:
###interval.reschedule([interval])
This function resets the interval
and restarts it now.
Arguments:
interval
: (OPTIONAL) This argument can be used to change the amount of milliseconds to wait before each call to thecallback
passed to thereInterval()
function.
###interval.clear()
This function clears the interval. Can be used to temporarily clear the interval
, which can be rescheduled at a later time.
###interval.destroy()
This function clears the interval, and will also clear the callback
and params
passed to reInterval, so calling this essentially just makes this object ready for overwriting with a new interval
object.
Please ensure that either the interval.clear()
or interval.destroy()
function is called before overwriting the interval
object, because the internal interval
can continue to run in the background unless cleared.
MIT