mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
3.5 KiB
92 lines
3.5 KiB
13 years ago
|
# Timers
|
||
14 years ago
|
|
||
10 years ago
|
Stability: 3 - Locked
|
||
13 years ago
|
|
||
13 years ago
|
All of the timer functions are globals. You do not need to `require()`
|
||
|
this module in order to use them.
|
||
|
|
||
9 years ago
|
## clearImmediate(immediateObject)
|
||
14 years ago
|
|
||
9 years ago
|
Stops an `immediateObject`, as created by [`setImmediate`][], from triggering.
|
||
14 years ago
|
|
||
9 years ago
|
## clearInterval(intervalObject)
|
||
13 years ago
|
|
||
9 years ago
|
Stops an `intervalObject`, as created by [`setInterval`][], from triggering.
|
||
9 years ago
|
|
||
11 years ago
|
## clearTimeout(timeoutObject)
|
||
14 years ago
|
|
||
9 years ago
|
Prevents a `timeoutObject`, as created by [`setTimeout`][], from triggering.
|
||
14 years ago
|
|
||
9 years ago
|
## ref()
|
||
|
|
||
9 years ago
|
If a timer was previously `unref()`d, then `ref()` can be called to explicitly
|
||
9 years ago
|
request the timer hold the program open. If the timer is already `ref`d calling
|
||
|
`ref` again will have no effect.
|
||
|
|
||
|
Returns the timer.
|
||
|
|
||
|
## setImmediate(callback[, arg][, ...])
|
||
|
|
||
9 years ago
|
Schedules "immediate" execution of `callback` after I/O events'
|
||
9 years ago
|
callbacks and before timers set by [`setTimeout`][] and [`setInterval`][] are
|
||
|
triggered. Returns an `immediateObject` for possible use with
|
||
|
[`clearImmediate`][]. Additional optional arguments may be passed to the
|
||
|
callback.
|
||
9 years ago
|
|
||
|
Callbacks for immediates are queued in the order in which they were created.
|
||
9 years ago
|
The entire callback queue is processed every event loop iteration. If an
|
||
|
immediate is queued from inside an executing callback, that immediate won't fire
|
||
9 years ago
|
until the next event loop iteration.
|
||
|
|
||
9 years ago
|
If `callback` is not a function `setImmediate()` will throw immediately.
|
||
|
|
||
10 years ago
|
## setInterval(callback, delay[, arg][, ...])
|
||
14 years ago
|
|
||
9 years ago
|
Schedules repeated execution of `callback` every `delay` milliseconds.
|
||
9 years ago
|
Returns a `intervalObject` for possible use with [`clearInterval`][]. Additional
|
||
|
optional arguments may be passed to the callback.
|
||
14 years ago
|
|
||
9 years ago
|
To follow browser behavior, when using delays larger than 2147483647
|
||
|
milliseconds (approximately 25 days) or less than 1, Node.js will use 1 as the
|
||
|
`delay`.
|
||
|
|
||
9 years ago
|
If `callback` is not a function `setInterval()` will throw immediately.
|
||
|
|
||
9 years ago
|
## setTimeout(callback, delay[, arg][, ...])
|
||
14 years ago
|
|
||
9 years ago
|
Schedules execution of a one-time `callback` after `delay` milliseconds.
|
||
9 years ago
|
Returns a `timeoutObject` for possible use with [`clearTimeout`][]. Additional
|
||
|
optional arguments may be passed to the callback.
|
||
9 years ago
|
|
||
9 years ago
|
The callback will likely not be invoked in precisely `delay` milliseconds.
|
||
|
Node.js makes no guarantees about the exact timing of when callbacks will fire,
|
||
|
nor of their ordering. The callback will be called as close as possible to the
|
||
|
time specified.
|
||
9 years ago
|
|
||
|
To follow browser behavior, when using delays larger than 2147483647
|
||
|
milliseconds (approximately 25 days) or less than 1, the timeout is executed
|
||
|
immediately, as if the `delay` was set to 1.
|
||
13 years ago
|
|
||
9 years ago
|
If `callback` is not a function `setTimeout()` will throw immediately.
|
||
|
|
||
13 years ago
|
## unref()
|
||
|
|
||
9 years ago
|
The opaque value returned by [`setTimeout`][] and [`setInterval`][] also has the
|
||
9 years ago
|
method `timer.unref()` which allows the creation of a timer that is active but
|
||
9 years ago
|
if it is the only item left in the event loop, it won't keep the program
|
||
|
running. If the timer is already `unref`d calling `unref` again will have no
|
||
|
effect.
|
||
13 years ago
|
|
||
9 years ago
|
In the case of [`setTimeout`][], `unref` creates a separate timer that will
|
||
|
wakeup the event loop, creating too many of these may adversely effect event
|
||
|
loop performance -- use wisely.
|
||
13 years ago
|
|
||
9 years ago
|
Returns the timer.
|
||
9 years ago
|
|
||
9 years ago
|
[`clearImmediate`]: timers.html#timers_clearimmediate_immediateobject
|
||
|
[`clearInterval`]: timers.html#timers_clearinterval_intervalobject
|
||
|
[`clearTimeout`]: timers.html#timers_cleartimeout_timeoutobject
|
||
|
[`setImmediate`]: timers.html#timers_setimmediate_callback_arg
|
||
9 years ago
|
[`setInterval`]: timers.html#timers_setinterval_callback_delay_arg
|
||
|
[`setTimeout`]: timers.html#timers_settimeout_callback_delay_arg
|