set-long-timeout
setTimeout and setInterval above 2147483647ms delay
Why?
The native setTimeout
and setInterval
are limited to a delay of 2147483647ms. This package allows you to set a timeout up to Number.MAX_SAFE_INTEGER
.
Install
npm install set-long-timeout
Usage
const {
setLongTimeout,
setLongInterval,
clearLongTimeout,
clearLongInterval
} = require('set-long-timeout')();
// will call function after 30 days
const timeoutId = setLongTimeout(() => { ... }, 2592000000);
// stop timeout with ID returned
clearLongTimeout(timeoutId);
// will call function every 30 days
const intervalId = setLongInterval(() => { ... }, 2592000000);
// stop interval with ID returned
clearLongInterval(intervalId);
API
const longTimeout = require('set-long-timeout');
longTimeout
is a function that takes one argument: the maximum setInterval delay, which defaults to 2147483647.
It returns 4 functions:
setLongTimeout(func, delay[, ...params])
Will call func
after delay
milliseconds with the passed params
if provided.
Returns an ID that can be used to stop the timer.
setLongInterval(func, delay[, ...params])
Will call func
every delay
milliseconds with the passed params
if provided.
Returns an ID that can be used to stop the timer.
clearLongTimeout(timerID)
Will stop a timer using the returned timer ID.
(Also works with setLongInterval
IDs)
clearLongInterval(timerID)
Will stop a timer using the returned timer ID.
(Also works with setLongTimeout
IDs)
Contributing
See CONTRIBUTING.md.
License
This software is licensed under the MIT Licence. See LICENSE.