Pag-unawa sa Pag-block sa Node.js?

Pag Unawa Sa Pag Block Sa Node Js



Ang blocking o synchronous code ay ang isa na humihinto o humihinto sa pagpapatupad ng lahat ng paparating o kulang sa pagpapatupad na mga proseso hanggang sa ang kasalukuyang proseso ay nai-compile. Ang ganitong uri ng code ay kadalasang ginagamit kapag ang mga prosesong isasagawa ay hindi nakadepende sa isa't isa. Sa simpleng mga termino, ang output ng unang paraan ay hindi dapat pakainin bilang halaga para sa pangalawa.

Nagbibigay ang gabay na ito ng paliwanag ng Pag-block sa Node.js.

Pag-unawa sa Pag-block sa Node.js?

Upang maunawaan ang pagharang sa Node.js, ang mga paraan ng pagharang na ibinigay ng “ fs ” Ang module ay maaaring gamitin ayon sa mga kinakailangan ng proyekto. Sa Node.js, ang bawat pamamaraan na naglalaman ng keyword ng “ I-sync ' gaya ng ' readFileSync() ',' renameSync() ”, at iba pa ay itinuturing na kasabay o mga paraan ng pagharang.







Ang ilan sa mga halimbawa ng mga paraan ng pagharang na ito sa Node.js ay ipinaliwanag sa ibaba:



Halimbawa 1: Paggamit ng Paraan ng Pag-block ng “fs.renameSync()”.

Ang ' fs.renameSync() Pinapalitan ng 'synchronous method ang folder mula sa lumang pangalan o landas patungo sa bagong pangalan o landas. Ang pag-uugali ng pagharang nito ay humihinto sa pagpapatupad ng lahat ng iba pang mga operasyon hanggang sa ang tinukoy nitong gawain i.e. pagpapalit ng pangalan ng isang folder ay hindi nakumpleto.



Syntax





Ang pangunahing syntax ng ' fs.renameSync() ” paraan ay nakasulat sa ibaba:

fs. renameSync ( lumang pangalan, bagong pangalan )

Ang syntax sa itaas ay nagpapakita na ang ' fs.renameSync() ” ay nangangailangan lamang ng path ng isang file na kailangang baguhin at ang na-update na path ng file na itatakda.



Magkaroon tayo ng isang halimbawa upang maunawaan ang gawain ng pagharang sa ' renameSync() ” paraan sa Node.js:

may fs = nangangailangan ( 'fs' ) ;

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

console. log ( 'Matagumpay na napalitan ang pangalan ng folder' )

Sa snippet ng code sa itaas:

  • Una, ang ' fs 'Ang module ay na-import at naka-imbak bilang isang bagay sa isang bagong variable na pinangalanang ' fs ”.
  • Pagkatapos, tawagan ang ' renameSync() ” paraan at ipasa ang lumang pangalan at bagong pangalan bilang mga parameter.
  • Hindi na kailangang gumamit ng mga function ng callback dahil sa magkasabay na uri ng code.
  • Gayundin, magpakita ng isang dummy na mensahe sa console upang i-verify ang pagharang ng mga proseso nang biswal.

Ang nabuong output ay nagpapakita na ang ibinigay na folder ay matagumpay na pinalitan ng pangalan sa tulong ng pagharang na ' renameSync() 'paraan:

Halimbawa 2: Paggamit ng Paraan ng Pag-block ng “mkdirSync()”.

Ang ' mkdirSync() ' ay ang paunang natukoy na kasabay na paraan ng ' fs ” module na lumilikha ng isang folder/direktoryo sa file system.

Syntax

Ang pangkalahatang syntax ng ' mkdirSync() ” paraan ay nakasulat sa ibaba:

mkdirSync ( landas, mga pagpipilian )

Ang ' mkdirSync() ” gumagana lamang sa sumusunod na dalawang parameter:

  • landas: Tinutukoy nito ang eksaktong landas o pangalan ng direktoryo na kinakailangang malikha.
  • mga pagpipilian: Ito ay isang opsyonal na parameter na tumutukoy sa paglikha ng isang folder nang recursively o hindi.

Magkaroon tayo ng halimbawa ng code ng pagharang sa ' mkdirSync() 'paraan:

console. log ( 'Mga Paraan ng Pag-block' ) ;

may fs = nangangailangan ( 'fs' ) ;

fs. mkdirSync ( 'Mga Use Case' ) ;

console. log ( 'Matagumpay na napalitan ang pangalan ng folder' ) ;

Sa code sa itaas, ang pangalan ng direktoryo na iko-convert ay ipinapasa sa loob ng “ mkdirSync() ” paraan. Ang pamamaraang ito ay ginagamit ng ' fs ” module object kasama ng dummy message.

Ang nabuong output ay nagpapakita na ang ' mkdirSync() ” na pamamaraan ay ipinatupad at hinaharangan nito ang paparating na proseso hanggang sa pagkumpleto ng pamamaraang ito:

Halimbawa 3: Paggamit ng Paraan ng Pag-block ng “rmdirSync()”.

Ang ' rmdirSync() ” ay isang kasabay na paraan na nagtatanggal ng mga folder mula sa ibinigay na tinukoy na landas. Hinaharangan ng kasabay na pag-uugali nito ang pagpapatupad ng lahat ng iba pang operasyon hanggang sa ang tinukoy nitong gawain i.e. ang pag-alis ng folder ay hindi nakumpleto.

Syntax

Ang pangkalahatang syntax ng ' fs.rmdirSync() ” paraan ay nakasulat sa ibaba:

fs. rmdirSync ( landas, mga pagpipilian )

Ang syntax sa itaas ay nagpapakita na ang ' rmdirSync() 'Gumagana lamang sa' landas ' at ang ' mga pagpipilian ” mga parameter.

Bisitahin ang snippet ng code sa ibaba upang tanggalin ang naka-target na folder mula sa proyekto at pagkatapos ay suriin ang pagiging available nito sa proyekto pagkatapos matanggal:

const fs = nangangailangan ( 'fs' ) ;

fs. rmdirSync ( 'Mga Use Case' )

console. log ( 'Matagumpay na natanggal ang folder' ) ;

ay folder = fs. existsSync ( 'Mga Use Case' ) ;

console. log ( 'May folder na:' , folder ) ;

Sa mga linya ng code sa itaas:

  • Una, ang ' rmdirSync() Ang pamamaraan ay ginagamit sa pamamagitan ng na-import na ' fs ” module object, ang pangalan ng file na kailangang tanggalin ay ipinasa bilang parameter.
  • Susunod, ang ' console.log() ” paraan ay nagpapakita ng mensahe ng pagpapatunay.
  • Pagkatapos nito, ang ' existsSync() ” paraan ay ginagamit din upang ipahiwatig kung ang ibinigay na folder ay umiiral o wala sa kasalukuyang direktoryo. Ang resulta o output ng pamamaraang ito ay naka-imbak sa ' folder ” variable.
  • Panghuli, ang ' console.log() Ipinapakita ng pamamaraang ' ang halaga ng ' folder ” variable sa console.

Ang nabuong output ay nagpapakita na ang naka-target na folder ay tinanggal sa tulong ng pagharang sa ' rmdirSync() 'paraan:

Iyon lang ang tungkol sa pagharang sa Node.js.

Konklusyon

Ang ' pagharang Pinipigilan ng code ang pagpapatupad ng lahat ng mga proseso hanggang sa ganap na maisakatuparan ang kasalukuyang proseso. Ito ay partikular na ginagamit para sa mga dependent na pamamaraan o function na ang output ay nakadepende sa mga nakaraang resulta ng function. Ang blocking code ay isa ring magandang pagpipilian kapag ang pangangailangan ay magsagawa ng mga proseso nang sunud-sunod. Ang gabay na ito ay naglalarawan ng detalyadong impormasyon sa pagharang sa Node.js.