Blockierung in Node.js verstehen?

Blockierung In Node Js Verstehen



Blockierender oder synchroner Code ist derjenige, der die Ausführung aller bevorstehenden oder in Ausführung befindlichen Prozesse anhält oder stoppt, bis der aktuell ausgeführte Prozess kompiliert wird. Diese Art von Code wird vor allem dann verwendet, wenn die auszuführenden Prozesse nicht voneinander abhängig sind. Vereinfacht ausgedrückt sollte die Ausgabe der ersten Methode nicht als Wert für die zweite Methode eingespeist werden.

Dieser Leitfaden enthält eine Erklärung zum Blockieren in Node.js.

Blockierung in Node.js verstehen?

Um die Blockierung in Node.js zu verstehen, müssen die Blockierungsmethoden verwendet werden, die von „ fs Das Modul kann je nach Projektanforderungen genutzt werden. In Node.js jede Methode, die das Schlüsselwort „ Synchronisieren ' wie ' readFileSync() ',' renameSync() “ usw. gelten als synchrone oder blockierende Methoden.







Einige dieser Beispiele für Blockierungsmethoden in Node.js werden im Folgenden erläutert:



Beispiel 1: Verwendung der blockierenden Methode „fs.renameSync()“.

Der ' fs.renameSync() Die synchrone Methode benennt den Ordner vom alten Namen oder Pfad in den neuen Namen oder Pfad um. Sein blockierendes Verhalten stoppt die Ausführung aller anderen Vorgänge, bis die angegebene Aufgabe, d. h. das Umbenennen eines Ordners, nicht abgeschlossen ist.



Syntax





Die grundlegende Syntax des „ fs.renameSync() Die Methode ist unten beschrieben:

fs. renameSync ( alter Name, neuer Name )

Die obige Syntax zeigt, dass „ fs.renameSync() „erfordert nur den Pfad einer Datei, die geändert werden muss, und den aktualisierten Dateipfad, der festgelegt wird.



Sehen wir uns ein Beispiel an, um zu verstehen, wie das Blockieren von „ renameSync() ”-Methode in Node.js:

es gibt fs = erfordern ( 'fs' ) ;

fs. renameSync ( 'usecase.txt' , 'demoAs.json' ) ;

Konsole. Protokoll ( „Ordner erfolgreich umbenannt“ )

Im obigen Codeausschnitt:

  • Zuerst die ' fs Das Modul wird importiert und als Objekt in einer neuen Variablen mit dem Namen „ gespeichert. fs “.
  • Rufen Sie dann „ renameSync() ”-Methode und übergeben Sie den alten und den neuen Namen als Parameter.
  • Aufgrund des synchronen Typcodes ist es nicht erforderlich, Rückruffunktionen zu verwenden.
  • Zeigen Sie außerdem eine Dummy-Nachricht auf der Konsole an, um die Blockierung von Prozessen visuell zu überprüfen.

Die generierte Ausgabe zeigt, dass der angegebene Ordner mithilfe der Blockierung erfolgreich umbenannt wurde. renameSync() ' Methode:

Beispiel 2: Verwendung der blockierenden Methode „mkdirSync()“.

Der ' mkdirSync() ” ist die vordefinierte synchrone Methode des „ fs ”-Modul, das einen Ordner/ein Verzeichnis im Dateisystem erstellt.

Syntax

Die verallgemeinerte Syntax des „ mkdirSync() Die Methode ist unten beschrieben:

mkdirSync ( Pfad, Optionen )

Der ' mkdirSync() „funktioniert nur mit den folgenden zwei Parametern:

  • Weg: Es gibt den genauen Pfad oder Namen des Verzeichnisses an, das erstellt werden muss.
  • Optionen: Es handelt sich um einen optionalen Parameter, der definiert, ob ein Ordner rekursiv erstellt wird oder nicht.

Lassen Sie uns ein Codebeispiel für das Blockieren des „ mkdirSync() ' Methode:

Konsole. Protokoll ( „Blockierungsmethoden“ ) ;

es gibt fs = erfordern ( 'fs' ) ;

fs. mkdirSync ( 'Anwendungsfälle' ) ;

Konsole. Protokoll ( „Ordner erfolgreich umbenannt“ ) ;

Im obigen Code wird der zu konvertierende Verzeichnisname innerhalb des „ mkdirSync() ' Methode. Diese Methode wird aufgerufen durch „ fs ”-Modulobjekt zusammen mit der Dummy-Nachricht.

Die generierte Ausgabe zeigt, dass „ mkdirSync() Die Methode wurde implementiert und blockiert den bevorstehenden Prozess bis zum Abschluss dieser Methode:

Beispiel 3: Verwendung der blockierenden Methode „rmdirSync()“.

Der ' rmdirSync() „ist eine synchrone Methode, die die Ordner aus dem angegebenen angegebenen Pfad löscht. Sein synchrones Verhalten blockiert die Ausführung aller anderen Vorgänge, bis die angegebene Aufgabe, d. h. das Entfernen eines Ordners, nicht abgeschlossen ist.

Syntax

Die verallgemeinerte Syntax des „ fs.rmdirSync() Die Methode ist unten beschrieben:

fs. rmdirSync ( Pfad, Optionen )

Die obige Syntax zeigt, dass „ rmdirSync() „funktioniert nur auf der „ Weg ' und das ' Optionen ” Parameter.

Besuchen Sie das folgende Code-Snippet, um den Zielordner aus dem Projekt zu löschen und prüfen Sie nach dem Löschen seine Verfügbarkeit im Projekt:

const fs = erfordern ( 'fs' ) ;

fs. rmdirSync ( 'Anwendungsfälle' )

Konsole. Protokoll ( „Ordner erfolgreich gelöscht“ ) ;

war Ordner = fs. existiertSync ( 'Anwendungsfälle' ) ;

Konsole. Protokoll ( „Ordner existiert:“ , Ordner ) ;

In den obigen Codezeilen:

  • Erstens, die „ rmdirSync() Die Methode „“ wird über die importierte „Methode“ aufgerufen. fs ”Modulobjekt, der Name der Datei, die gelöscht werden muss, wird als Parameter übergeben.
  • Als nächstes wird das „ console.log() ”-Methode zeigt die Bestätigungsmeldung an.
  • Danach wird das „ existiertSync() Die Methode wird auch aufgerufen, um anzugeben, ob der angegebene Ordner im aktuellen Verzeichnis vorhanden ist oder nicht. Das Ergebnis oder die Ausgabe dieser Methode wird im Verzeichnis „ Ordner ” variabel.
  • Schließlich ist das „ console.log() Die Methode zeigt den Wert von „ Ordner ”-Variable auf der Konsole.

Die generierte Ausgabe zeigt, dass der Zielordner mithilfe der Blockierung des „ rmdirSync() ' Methode:

Das ist alles über das Blockieren in Node.js.

Abschluss

Der ' Blockierung „Code stoppt die Ausführung aller Prozesse, bis der aktuelle Prozess vollständig ausgeführt ist. Es wird speziell für abhängige Methoden oder Funktionen verwendet, deren Ausgabe von vorherigen Funktionsergebnissen abhängt. Der Blockierungscode ist auch dann eine gute Wahl, wenn Prozesse nacheinander ausgeführt werden müssen. In diesem Leitfaden finden Sie ausführliche Informationen zum Blockieren in Node.js.