Timer del modulo
Il modulo timers è un modulo integrato che fornisce alcune funzioni e oggetti relativi al tempo, tra cui setTimeout(), setInterval(), clearInterval(), clearTimeout(), ecc.
La funzione setInterval() chiama la funzione ogni volta specificata e restituisce un oggetto timer.
1
2
3
4
5
6var timers = require('timers');
function callback() {
console.log('Hello, World!');
}
var intervalId = timers.setInterval(callback, 1000);
La funzione setTimeout() chiama una funzione dopo un tempo specificato, restituendo un oggetto timer.
1
2
3
4
5
6var timers = require('timers');
function callback() {
console.log('Hello, World!');
}
var timeoutId = timers.setTimeout(callback, 1000);
La funzione clearTimeout() viene utilizzata per annullare un timer impostato dal metodo setTimeout(). Tutto ciò che deve essere fornito è il valore dell'identificatore del timer restituito in setTimeout().
1
2
3
4
5
6
7var timers = require('timers');
function callback() {
console.log('Hello, World!');
}
var timeoutId = timers.setTimeout(callback, 1000);
timers.clearTimeout(timeoutId);
La funzione clearInterval() viene utilizzata per annullare un timer impostato dal metodo setInterval(). Tutto ciò che deve essere fornito è il valore dell'identificatore del timer restituito in setInterval().
1
2
3
4
5
6
7var timers = require('timers');
function callback() {
console.log('Hello, World!');
}
var intervalId = timers.setInterval(callback, 1000);
timers.clearInterval(intervalId);
La funzione setImmediate() viene utilizzata per chiamare immediatamente la funzione al successivo periodo di inattività e restituire l'oggetto timer.
1
2
3
4
5
6var timers = require('timers');
function callback() {
console.log('Hello, World!');
}
var immediateId = timers.setImmediate(callback);
Quanto sopra sono esempi di funzioni e oggetti di uso comune forniti dal modulo timer.Utilizzando queste funzioni e oggetti, è possibile implementare facilmente l'esecuzione di attività ritardata o pianificata nell'applicazione.
funzione statica
setTimeout
Chiama una funzione dopo un tempo specificato
1
2
3static Timer timers.setTimeout(Function callback,
Number timeout = 1,
...args);
Parametri di chiamata:
- callback: Funzione, specifica la funzione di richiamata
- timeout: Numero, specifica il tempo di ritardo in millisecondi. Se supera 2^31, eseguilo immediatamente.
- args: ..., parametri aggiuntivi, passati al callback specificato, facoltativo.
risultato di ritorno:
- Timer, restituisce l'oggetto timer
clearTimeout
Cancella il timer specificato
1static timers.clearTimeout(Value t);
Parametri di chiamata:
- t: Valore, specifica il timer da cancellare
setInterval
Chiama una funzione dopo ogni intervallo specificato
1
2
3static Timer timers.setInterval(Function callback,
Number timeout,
...args);
Parametri di chiamata:
- callback: Funzione, specifica la funzione di richiamata
- timeout: Numero, specifica l'intervallo di tempo in millisecondi. Se supera 2^31, eseguilo immediatamente.
- args: ..., parametri aggiuntivi, passati al callback specificato, facoltativo.
risultato di ritorno:
- Timer, restituisce l'oggetto timer
clearInterval
Cancella il timer specificato
1static timers.clearInterval(Value t);
Parametri di chiamata:
- t: Valore, specifica il timer da cancellare
setHrInterval
Chiama la funzione dopo un intervallo specificato.Si tratta di un timer ad alta precisione che interromperà attivamente il timer di esecuzione dello script JavaScript in esecuzione
1
2
3static Timer timers.setHrInterval(Function callback,
Number timeout,
...args);
Parametri di chiamata:
- callback: Funzione, specifica la funzione di richiamata
- timeout: Numero, specifica l'intervallo di tempo in millisecondi. Se supera 2^31, eseguilo immediatamente.
- args: ..., parametri aggiuntivi, passati al callback specificato, facoltativo.
risultato di ritorno:
- Timer, restituisce l'oggetto timer
Poiché il timer di setHrInterval interromperà il codice in esecuzione per eseguire il callback, non modificare i dati che potrebbero influire su altri moduli nella funzione di callback o chiamare qualsiasi funzione API contrassegnata come asincrona nel callback, altrimenti verranno prodotti risultati imprevedibili. Per esempio:
1
2
3
4
5
6
7
8
9
10var timers = require('timers');
var cnt = 0;
timers.setHrInterval(() => {
cnt++;
}, 100);
while (cnt < 10);
console.error("===============================> done");
In questo codice, il ciclo alla riga 8 non terminerà a causa della modifica di cnt, poiché JavaScript determinerà che cnt non verrà modificato durante questo ciclo durante l'ottimizzazione del codice.
clearHrInterval
Cancella il timer specificato
1static timers.clearHrInterval(Value t);
Parametri di chiamata:
- t: Valore, specifica il timer da cancellare
setImmediate
Esegui immediatamente la funzione di richiamata al prossimo tempo libero
1
2static Timer timers.setImmediate(Function callback,
...args);
Parametri di chiamata:
- callback: Funzione, specifica la funzione di richiamata
- args: ..., parametri aggiuntivi, passati al callback specificato, facoltativo.
risultato di ritorno:
- Timer, restituisce l'oggetto timer
clearImmediate
Cancella il timer specificato
1static timers.clearImmediate(Value t);
Parametri di chiamata:
- t: Valore, specifica il timer da cancellare
call
Chiama la funzione data e interrompe la funzione allo scadere del timeout
1
2
3static Value timers.call(Function func,
Number timeout,
...args);
Parametri di chiamata:
- func: Funzione, specifica la funzione da eseguire
- timeout: Numero, specificare il timeout
- args: ..., parametri aggiuntivi, passati al callback specificato, facoltativo.
risultato di ritorno:
- Value, restituisce il risultato corrente di func