Hoe laat u time-outs achter in Node.js?

Hoe Laat U Time Outs Achter In Node Js



In Node.js wordt de “ Timers ”-module plant de taak die kan worden uitgevoerd na een specifiek tijdsinterval met behulp van de verschillende ingebouwde methoden. Deze module biedt ook een “ Time-out ” klasse die standaard intern wordt aangemaakt wanneer de geplande “ setTime-out ()' of de ' setInterval ()” wordt uitgevoerd. Deze klasse blijft werken, zelfs nadat de opgegeven methoden zijn gestopt of geannuleerd. Daarom moet de gebruiker het stoppen, waardoor de gebeurtenislus kan stoppen.

Dit artikel laat zien hoe u time-outs achterlaat in Node.js.







Hoe laat u time-outs achter in Node.js?

Om de uitvoering van de gebeurtenislus te verlaten of te annuleren na het annuleren van de planningsmethoden, gebruikt u de “ niet-ref ()' en de ' ref ()” methoden. De ' niet-ref ()”methode vraagt ​​om de “ Time-out 'object om de uitvoering van de gebeurtenislus te deactiveren omdat er niets meer voor nodig is. Aan de andere kant is de “ ref ()”methode verwijst naar de “ timer ”-object om te controleren of het actief of gedeactiveerd is na het aanroepen van de “ niet-ref ()” methode.



De ' niet-ref ()”-methode stopt de uitvoering van de gebeurtenislus als er geen ander proces moet worden uitgevoerd voordat de opgegeven callback-functie wordt aangeroepen. Zodra alles klaar is, verschijnt de “ ref ()”methode verifieert of de “ Time-out ”-object is gedeactiveerd of niet.



Syntaxis van de “ref()”-methode

De werking van de “ ref ()”-methode is gebaseerd op de hieronder genoemde algemene syntaxis:





time-out. ref ( )

Syntaxis van de “unref()”-methode

De werking van de “ proces.unref ()”-methode is afhankelijk van de hieronder geschreven basissyntaxis:

time-out. niet-ref ( )

Parameters : Beide bovenstaande definitie-syntaxis hebben geen extra argument nodig om hun hoofdfunctionaliteit uit te voeren.



Retourwaarden: De ' ref ()' En ' niet-ref ()” methoden bieden een “ Geen ' geretourneerd type.

Voorbeeld: de methoden “ref()” en “unref()” toepassen om het object “Timeout” te stoppen

Dit voorbeeld toont de praktische implementatie van de “ ref ()' En ' niet-ref ()” methoden om het standaardgedrag van de gebeurtenislus te controleren en de intern gemaakte “ Time-out ' voorwerp:

was Time-out = setTime-out ( functie mijn plezier ( ) {
troosten. loggen ( 'Time-out is ingesteld op 1000 ms' , 1000 ) ;
} ) ;
troosten. loggen ( '2. ' , Time-out. heeftRef ( ) ) ;
troosten. loggen ( '3. ' , Time-out. ref ( ) ) ;
troosten. loggen ( '4. ' , Time-out. niet-ref ( ) ) ;
troosten. loggen ( '5. ' , Time-out. heeftRef ( ) ) ;
Time-out. ref ( )
troosten. loggen ( '6.' , Time-out. heeftRef ( ) ) ;
clearTime-out ( Time-out ) ;
troosten. loggen ( '7. Time-out is gewist!' ) ;

De uitleg van de bovenstaande coderegels staat hieronder:

  • In de eerste plaats de “ Time-out 'object past de' setTime-out ()”-methode die een functie definieert om de opgegeven taakinstructie na de gegeven tijdsvertraging weer te geven. Deze methode retourneert een “ Time-out intern bezwaar maken.
  • Vervolgens wordt de “ console.log ()”methode gebruikt de “ heeftRef ()” methode om te controleren of de “ Time-out ()”-object bestaat of niet. Het retourneert een “Booleaanse” waarde als uitvoer.
  • Daarna wordt de “ console.log ()”methode gebruikt de “ ref ()” methode om de geretourneerde “ Time-out ' voorwerp.
  • Nu de ' niet-ref ()”-methode deactiveert de “ Time-out 'object als het bestaat en verifieert vervolgens het resultaat via de' heeftRef ()” methode.
  • Verwijs ten slotte naar de “ Time-out ' opnieuw object, controleer het bestaan ​​ervan en 'stop' vervolgens het interval met behulp van de ' clearTime-out ()” methode.

Uitvoer

Voer de “ app .js”-bestand met de gegeven “ knooppunt ” commando:

knooppunt-app. js

De onderstaande uitvoer toont eerst het bestaan ​​van de “ Time-out ”-object en deactiveert het vervolgens en stopt respectievelijk het interval:

Dat is alles over het verlaten van de “ Time-out ”object achter in Node.js.

Conclusie

Om de “ Time-out 'object gebruik de ingebouwde' niet-ref ()' en de ' ref ()” methoden van de “ Time-out ' klas. Beide methoden voeren de bewerkingen uit op basis van hun namen en functionaliteiten. Deze methoden behandelen het standaardgedrag van de gebeurtenislus. Dit artikel heeft alle mogelijke benaderingen geïllustreerd om time-outs achter te laten in Node.js.