כיצד להקצות מאגרים לא בטוחים עם Buffer.allocUnsafe() ב-Node.js?

Kyzd Lhqzwt M Grym L Btwhym M Buffer Allocunsafe B Node Js



בַּלָם הוא למעשה מיקום זיכרון ספציפי שבו הנתונים מאוחסנים לפרק זמן קטן לפני שלב הביצוע כדי להמתין לתורם לביצוע. ב-Node.js, הפונקציונליות שלו שונה לביצוע פעולות על נתונים בינאריים. ישנם ממשקי API או שיטות שונות המשמשות ליצירת מאגר ולהכנסת נתונים למאגר. ה-API המשמש במיוחד ליצירת המאגר הריק מכונה ' Buffer.allocUnsafe() '.

מדריך זה ממחיש את ההליך של הקצאת ה-Unsafe Buffers באמצעות Buffer.allocUnsafe() API ב-Node.js.







כיצד להקצות מאגרים לא בטוחים עם Buffer.allocUnsafe() ב-Node.js?

ה ' Buffer.allocUnsafe() שיטת ' יוצרת מאגר בטווח של ' buffer.constants.MAX_LENGTH ' ו' 0 '. לאחר יצירת מאגר ריק בעזרת שיטת 'fill()', ניתן להקצות את הערכים למאגר. זה נקרא 'לא בטוח' מכיוון שהוא יכול לדלוף נתונים המאוחסנים במאגר אחר.



תחביר

התחביר עבור ' מְסוּכָּן ' המאגר הוא כדלקמן:



בַּלָם. allocUnsafe ( גודל ) ;

ה ' גודל ” הוא ערך מסוג מספר שלם המציג את אורך המאגר הלא בטוח שעומד להיווצר.





סוג החזרה

סוג ההחזרה של API או שיטה זו הוא מאגר חדש בגודל השווה לערך הפרמטרי שסופק בעת היצירה.

דוגמה 1: הקצאת מאגרים לא בטוחים באמצעות Buffer.allocUnsafe()

בדוגמה זו, המאגר הלא בטוח עם האורך המסופק מיושם באמצעות ' Buffer.allocUnsafe() ' שיטה:



היה unsafeBuff = בַּלָם. allocUnsafe ( 13 ) ;
לְנַחֵם. עֵץ ( unsafeBuff ) ;

בקוד שלמעלה, הגודל של ' 13 ' מסופק ל' Buffer.allocUnsafe() שיטה ליצירת מאגר לא בטוח באורך של ' 13 '. מאגר זה מוצג לאחר מכן גם על גבי הקונסולה בעזרת ' console.log() ' שיטה.

הפלט שנוצר לאחר ההידור עבור הקוד לעיל נראה כך:

דוגמה 2: המרת מאגרים לא בטוחים למאגרים בטוחים

במקרה זה, ' מאגר לא בטוח ' הולך להיות מיושם ואז הוא יומר ל' מאגר בטוח ' על ידי הקצאת ערכים:

היה מְסוּכָּן = בַּלָם. allocUnsafe ( 13 ) ;

לְנַחֵם. עֵץ ( 'מציג מאגר לא בטוח!' )
לְנַחֵם. עֵץ ( מְסוּכָּן ) ;

//רוקן את המאגר הלא בטוח ומלא אותו ב-11 שניות:

מְסוּכָּן. למלא ( 8 ) ;

לְנַחֵם. עֵץ ( 'שומר על המאגר שנוצר!' )
לְנַחֵם. עֵץ ( מְסוּכָּן ) ;

התיאור של בלוק הקוד לעיל מוצג להלן:

  • ראשית, המאגר הלא בטוח נוצר עם השם ' מְסוּכָּן ' ויש לו את הגודל של ' 13 '.
  • הבא, זה ' מְסוּכָּן ' מאגר מוצג מעל המסוף.
  • כדי להמיר את המאגר הלא בטוח למאגר בטוח, הקצה ערכים או אלמנטים ל'לא בטוח' זה בשם מאגר באמצעות ' למלא() ' שיטה.
  • בסופו של דבר, הצג את המאגר בחלון המסוף.

הפלט שנוצר לאחר הידור קוד מראה שבמצב לא בטוח עכשיו מוקצים ערכים אך נוצר מאגר ועל ידי הקצאת ערכים הוא הופך למאגר בטוח:

זה הכל על הקצאת המאגר Unsafe עם Buffer.allocUnsafe() ב-Node.js.

סיכום

כדי להקצות מאגרים לא בטוחים עם ' Buffer.allocUnsafe() ' מעבירים את אורך המאגר בפורמט של מספרים שלמים בתוך הסוגריים שלו והמאגר הריק עם האורך המסופק נוצר. על מנת להמיר מאגר בטוח למאגר בטוח, הקצה לו את הערכים באמצעות ' למלא() ' שיטה. מדריך זה הדגים את התהליך להקצאת מאגרים לא בטוחים באמצעות Buffer.allocUnsafe().