Κατανοείτε τον αποκλεισμό στο Node.js;

Katanoeite Ton Apokleismo Sto Node Js



Ο αποκλεισμός ή ο σύγχρονος κώδικας είναι αυτός που σταματά ή σταματά την εκτέλεση όλων των επερχόμενων ή υποεκτελούμενων διεργασιών μέχρι να μεταγλωττιστεί η τρέχουσα εκτελούμενη διαδικασία. Αυτός ο τύπος κώδικα χρησιμοποιείται κυρίως όταν οι διεργασίες που πρόκειται να εκτελεστούν δεν εξαρτώνται η μία από την άλλη. Με απλά λόγια, η έξοδος της πρώτης μεθόδου δεν πρέπει να τροφοδοτείται ως τιμή για τη δεύτερη.

Αυτός ο οδηγός παρέχει μια εξήγηση του Αποκλεισμού στο Node.js.

Κατανοείτε τον αποκλεισμό στο Node.js;

Για να κατανοήσετε τον αποκλεισμό στο Node.js, οι μέθοδοι αποκλεισμού που παρέχονται από το ' fs Η ενότητα μπορεί να χρησιμοποιηθεί σύμφωνα με τις απαιτήσεις του έργου. Στο Node.js, κάθε μέθοδος που περιέχει τη λέξη-κλειδί του ' Συγχρονισμός ' αρέσει ' readFileSync() ',' renameSync() ”, και ούτω καθεξής θεωρούνται σύγχρονες ή αποκλειστικές μέθοδοι.







Μερικά από αυτά τα παραδείγματα μεθόδων αποκλεισμού στο Node.js εξηγούνται παρακάτω:



Παράδειγμα 1: Χρήση της μεθόδου αποκλεισμού 'fs.renameSync()'.

Ο ' fs.renameSync() Η σύγχρονη μέθοδος μετονομάζει το φάκελο από το παλιό όνομα ή διαδρομή στο νέο όνομα ή διαδρομή. Η συμπεριφορά αποκλεισμού του σταματά την εκτέλεση όλων των άλλων λειτουργιών μέχρι να μην ολοκληρωθεί η καθορισμένη εργασία του, δηλαδή η μετονομασία ενός φακέλου.



Σύνταξη





Η βασική σύνταξη του « fs.renameSync() Η μέθοδος γράφεται παρακάτω:

fs. renameSync ( παλιό όνομα, νέο όνομα )

Η παραπάνω σύνταξη δείχνει ότι το « fs.renameSync() ” απαιτεί μόνο τη διαδρομή ενός αρχείου που πρέπει να τροποποιηθεί και την ενημερωμένη διαδρομή αρχείου που θα οριστεί.



Ας έχουμε ένα παράδειγμα για να κατανοήσουμε τη λειτουργία του αποκλεισμού του ' renameSync() ' μέθοδος στο Node.js:

υπάρχει fs = απαιτώ ( 'fs' ) ;

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

κονσόλα. κούτσουρο ( 'Ο φάκελος μετονομάστηκε με επιτυχία' )

Στο παραπάνω απόσπασμα κώδικα:

  • Πρώτον, το « fs Η ενότητα εισάγεται και αποθηκεύεται ως αντικείμενο σε μια νέα μεταβλητή που ονομάζεται ' fs '.
  • Στη συνέχεια, επικαλέστε το ' renameSync() ” μέθοδο και περάστε το παλιό όνομα και το νέο όνομα ως παραμέτρους.
  • Δεν χρειάζεται να χρησιμοποιήσετε λειτουργίες επανάκλησης λόγω του σύγχρονου κωδικού τύπου.
  • Επίσης, εμφανίστε ένα εικονικό μήνυμα στην κονσόλα για να επαληθεύσετε οπτικά τον αποκλεισμό των διαδικασιών.

Η παραγόμενη έξοδος δείχνει ότι ο δεδομένος φάκελος έχει μετονομαστεί με επιτυχία με τη βοήθεια του αποκλεισμού ' renameSync() 'μέθοδος:

Παράδειγμα 2: Χρήση της μεθόδου αποκλεισμού 'mkdirSync()'.

Ο ' mkdirSync() ' είναι η προκαθορισμένη σύγχρονη μέθοδος του ' fs ” ενότητα που δημιουργεί έναν φάκελο/κατάλογο στο σύστημα αρχείων.

Σύνταξη

Η γενικευμένη σύνταξη του « mkdirSync() Η μέθοδος γράφεται παρακάτω:

mkdirSync ( διαδρομή, επιλογές )

Ο ' mkdirSync() ' λειτουργεί μόνο στις ακόλουθες δύο παραμέτρους:

  • μονοπάτι: Καθορίζει την ακριβή διαδρομή ή το όνομα του καταλόγου που απαιτείται για τη δημιουργία.
  • επιλογές: Είναι μια προαιρετική παράμετρος που ορίζει τη δημιουργία ενός φακέλου αναδρομικά ή όχι.

Ας έχουμε ένα παράδειγμα κώδικα αποκλεισμού του ' mkdirSync() 'μέθοδος:

κονσόλα. κούτσουρο ( «Μέθοδοι αποκλεισμού» ) ;

υπάρχει fs = απαιτώ ( 'fs' ) ;

fs. mkdirSync ( 'Περιπτώσεις χρήσης' ) ;

κονσόλα. κούτσουρο ( 'Ο φάκελος μετονομάστηκε με επιτυχία' ) ;

Στον παραπάνω κώδικα, το όνομα του καταλόγου που πρόκειται να μετατραπεί περνά μέσα στο ' mkdirSync() 'μέθοδος. Αυτή η μέθοδος επικαλείται το « fs ' αντικείμενο της μονάδας μαζί με το εικονικό μήνυμα.

Η παραγόμενη έξοδος δείχνει ότι το « mkdirSync() ” η μέθοδος έχει εφαρμοστεί και μπλοκάρει την επερχόμενη διαδικασία μέχρι την ολοκλήρωση αυτής της μεθόδου:

Παράδειγμα 3: Χρήση της μεθόδου αποκλεισμού 'rmdirSync()'.

Ο ' rmdirSync() ” είναι μια σύγχρονη μέθοδος που διαγράφει τους φακέλους από τη δεδομένη καθορισμένη διαδρομή. Η σύγχρονη συμπεριφορά του εμποδίζει την εκτέλεση όλων των άλλων λειτουργιών μέχρι να μην ολοκληρωθεί η καθορισμένη εργασία του, δηλαδή η αφαίρεση ενός φακέλου.

Σύνταξη

Η γενικευμένη σύνταξη του « fs.rmdirSync() Η μέθοδος γράφεται παρακάτω:

fs. rmdirSync ( διαδρομή, επιλογές )

Η παραπάνω σύνταξη δείχνει ότι το « rmdirSync() 'Λειτουργεί μόνο σε ' μονοπάτι ' και το ' επιλογές ' Παράμετροι.

Επισκεφτείτε το παρακάτω απόσπασμα κώδικα για να διαγράψετε τον στοχευμένο φάκελο από το έργο και, μετά τη διαγραφή, ελέγξτε τη διαθεσιμότητά του στο έργο:

συνθ fs = απαιτώ ( 'fs' ) ;

fs. rmdirSync ( 'Περιπτώσεις χρήσης' )

κονσόλα. κούτσουρο ( 'Ο φάκελος διαγράφηκε με επιτυχία' ) ;

ήταν φάκελος = fs. existsSync ( 'Περιπτώσεις χρήσης' ) ;

κονσόλα. κούτσουρο ( 'Ο φάκελος υπάρχει:' , ντοσιέ ) ;

Στις παραπάνω γραμμές κώδικα:

  • Πρώτον, το « rmdirSync() 'η μέθοδος καλείται μέσω του εισαγόμενου ' fs ' αντικείμενο της μονάδας, το όνομα του αρχείου που πρέπει να διαγραφεί μεταβιβάζεται ως παράμετρος.
  • Στη συνέχεια, το « console.log() Η μέθοδος ' εμφανίζει το μήνυμα επαλήθευσης.
  • Μετά από αυτό, το « existsSync() Η μέθοδος ” καλείται επίσης για να υποδείξει εάν ο δεδομένος φάκελος υπάρχει ή όχι στον τρέχοντα κατάλογο. Το αποτέλεσμα ή η έξοδος αυτής της μεθόδου αποθηκεύεται στο ' ντοσιέ ” μεταβλητή.
  • Τέλος, το « console.log() Η μέθοδος ' εμφανίζει την τιμή του ' ντοσιέ ' μεταβλητή στην κονσόλα.

Η παραγόμενη έξοδος δείχνει ότι ο στοχευμένος φάκελος έχει διαγραφεί με τη βοήθεια αποκλεισμού του ' rmdirSync() 'μέθοδος:

Αυτό είναι όλο για τον αποκλεισμό στο Node.js.

συμπέρασμα

Ο ' μπλοκάρισμα Ο κώδικας σταματά την εκτέλεση όλων των διεργασιών μέχρι να εκτελεστεί πλήρως η τρέχουσα διαδικασία. Χρησιμοποιείται ειδικά για εξαρτημένες μεθόδους ή συναρτήσεις των οποίων η έξοδος εξαρτάται από προηγούμενα αποτελέσματα συναρτήσεων. Ο κωδικός αποκλεισμού είναι επίσης μια καλή επιλογή όταν χρειάζεται να εκτελούνται διαδοχικές διαδικασίες. Αυτός ο οδηγός έχει επεξηγήσει λεπτομερείς πληροφορίες σχετικά με τον αποκλεισμό στο Node.js.