Entenent el bloqueig a Node.js?

Entenent El Bloqueig A Node Js



El codi de bloqueig o síncron és el que atura o atura l'execució de tots els processos propers o en execució insuficient fins que es compila el procés en execució actual. Aquest tipus de codi s'utilitza principalment quan els processos a executar no depenen els uns dels altres. En termes simples, la sortida del primer mètode no s'ha d'alimentar com a valor del segon.

Aquesta guia proporciona una explicació del bloqueig a Node.js.

Entenent el bloqueig a Node.js?

Per entendre el bloqueig a Node.js, els mètodes de bloqueig proporcionats pel ' fs ” El mòdul es pot utilitzar segons els requisits del projecte. A Node.js, tots els mètodes que continguin la paraula clau ' Sincronitzar ' M'agrada ' readFileSync() ”, “ renameSync() ”, i així successivament es consideren mètodes sincrònics o de bloqueig.







Alguns d'aquests exemples de mètodes de bloqueig a Node.js s'expliquen a continuació:



Exemple 1: ús del mètode de bloqueig 'fs.renameSync()'.

El ' fs.renameSync() ” El mètode sincrònic canvia el nom de la carpeta del nom o camí antic al nom o camí nou. El seu comportament de bloqueig atura l'execució de totes les altres operacions fins que no s'hagi completat la tasca especificada, és a dir, canviar el nom d'una carpeta.



Sintaxi





La sintaxi bàsica del ' fs.renameSync() ” El mètode s'escriu a continuació:

fs. renameSync ( nom antic, nom nou )

La sintaxi anterior mostra que el ' fs.renameSync() ” només requereix la ruta d'un fitxer que cal modificar i la ruta del fitxer actualitzada que s'establirà.



Tinguem un exemple per entendre el funcionament de bloquejar el ' renameSync() ” mètode a Node.js:

hi ha fs = requereixen ( 'fs' ) ;

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

consola. registre ( 'S'ha canviat el nom de la carpeta correctament' )

Al fragment de codi anterior:

  • En primer lloc, el ' fs El mòdul s'importa i s'emmagatzema com a objecte en una nova variable anomenada ' fs ”.
  • A continuació, invoqueu el ' renameSync() ” i passa el nom antic i el nom nou com a paràmetres.
  • No cal utilitzar les funcions de devolució de trucada a causa del codi de tipus síncron.
  • A més, mostreu un missatge fictici a la consola per verificar visualment el bloqueig dels processos.

La sortida generada mostra que la carpeta donada s'ha canviat de nom amb èxit amb l'ajuda del bloqueig ' renameSync() ” mètode:

Exemple 2: Ús del mètode de bloqueig “mkdirSync()”.

El ' mkdirSync() ” és el mètode sincrònic predefinit del “ fs ” mòdul que crea una carpeta/directori al sistema de fitxers.

Sintaxi

La sintaxi generalitzada del ' mkdirSync() ” El mètode s'escriu a continuació:

mkdirSync ( camí, opcions )

El ' mkdirSync() ” només funciona amb els dos paràmetres següents:

  • Camí: Especifica el camí exacte o el nom del directori que cal crear.
  • opcions: És un paràmetre opcional que defineix la creació d'una carpeta de forma recursiva o no.

Tinguem un exemple de codi per bloquejar el ' mkdirSync() ” mètode:

consola. registre ( 'Mètodes de bloqueig' ) ;

hi ha fs = requereixen ( 'fs' ) ;

fs. mkdirSync ( 'Casos d'ús' ) ;

consola. registre ( 'S'ha canviat el nom de la carpeta correctament' ) ;

Al codi anterior, el nom del directori que s'ha de convertir es passa dins del ' mkdirSync() ” mètode. Aquest mètode és invocat pel ' fs ” objecte del mòdul juntament amb el missatge fictici.

La sortida generada mostra que el ' mkdirSync() ” s'ha implementat i està bloquejant el proper procés fins a la finalització d'aquest mètode:

Exemple 3: Ús del mètode de bloqueig 'rmdirSync()'.

El ' rmdirSync() ” és un mètode síncron que elimina les carpetes del camí especificat. El seu comportament síncron bloqueja l'execució de totes les altres operacions fins que no s'hagi completat la tasca especificada, és a dir, eliminar una carpeta.

Sintaxi

La sintaxi generalitzada del ' fs.rmdirSync() ” El mètode s'escriu a continuació:

fs. rmdirSync ( camí, opcions )

La sintaxi anterior mostra que el ' rmdirSync() ' només funciona a ' Camí ' i la ' opcions ” paràmetres.

Visiteu el fragment de codi següent per suprimir la carpeta de destinació del projecte i, després de la supressió, comproveu-ne la disponibilitat al projecte:

const fs = requereixen ( 'fs' ) ;

fs. rmdirSync ( 'Casos d'ús' )

consola. registre ( 'La carpeta s'ha suprimit correctament' ) ;

era carpeta = fs. existsSync ( 'Casos d'ús' ) ;

consola. registre ( 'La carpeta existeix:' , carpeta ) ;

A les línies de codi anteriors:

  • En primer lloc, el ' rmdirSync() ' s'invoca mitjançant el 'importat' fs ” objecte mòdul, el nom del fitxer que cal suprimir es passa com a paràmetre.
  • A continuació, el ' console.log() ” mostra el missatge de verificació.
  • Després d'això, el ' existsSync() ” també s'invoca per indicar si la carpeta donada existeix o no al directori actual. El resultat o la sortida d'aquest mètode s'emmagatzema al fitxer ' carpeta ” variable.
  • Finalment, el ' console.log() El mètode ' mostra el valor del ' carpeta ” variable a la consola.

La sortida generada mostra que la carpeta de destinació s'ha suprimit amb l'ajuda de bloquejar el ' rmdirSync() ” mètode:

Això és tot sobre el bloqueig a Node.js.

Conclusió

El ' bloqueig ” el codi atura l'execució de tots els processos fins que el procés actual s'executa completament. S'utilitza específicament per a mètodes o funcions dependents la sortida de les quals depèn dels resultats de funcions anteriors. El codi de bloqueig també és una bona opció quan cal dur a terme processos de manera seqüencial. Aquesta guia ha il·lustrat informació detallada sobre el bloqueig a Node.js.