Làm cách nào để phân bổ bộ đệm không an toàn bằng Buffer.allocUnsafe() trong Node.js?

Lam Cach Nao De Phan Bo Bo Dem Khong An Toan Bang Buffer Allocunsafe Trong Node Js



Đệm thực chất là một vị trí bộ nhớ cụ thể nơi dữ liệu được lưu trữ trong một khoảng thời gian nhỏ trước giai đoạn thực thi để chờ đến lượt chúng thực thi. Trong Node.js, chức năng của nó được sửa đổi để thực hiện các thao tác trên dữ liệu nhị phân. Có nhiều API hoặc phương thức khác nhau được sử dụng để tạo Bộ đệm và chèn dữ liệu vào Bộ đệm. API được sử dụng cụ thể để tạo Bộ đệm trống được gọi là “ Bộ đệm.allocUnsafe() ”.

Hướng dẫn này minh họa quy trình phân bổ Bộ đệm không an toàn bằng API Buffer.allocUnsafe() trong Node.js.







Làm cách nào để phân bổ bộ đệm không an toàn bằng Buffer.allocUnsafe() trong Node.js?

Các ' Bộ đệm.allocUnsafe() Phương thức ” tạo Bộ đệm trong phạm vi “ đệm.constants.MAX_LENGTH ' Và ' 0 ”. Sau khi tạo bộ đệm trống với sự trợ giúp của phương thức “fill()”, các giá trị có thể được gán cho Bộ đệm. Nó được gọi là “Không an toàn” vì nó có thể làm rò rỉ dữ liệu được lưu trữ trong bộ đệm khác.



Cú pháp

Cú pháp của “ Không an toàn ”Bộ đệm như sau:



Đệm. phân bổKhông an toàn ( kích cỡ ) ;

Các ' kích cỡ ” là một giá trị kiểu số nguyên hiển thị độ dài của Bộ đệm không an toàn sắp được tạo.





Kiểu trả về

Kiểu trả về của API hoặc phương thức này là bộ đệm mới có kích thước bằng giá trị tham số được cung cấp tại thời điểm tạo.

Ví dụ 1: Phân bổ bộ đệm không an toàn bằng Buffer.allocUnsafe()

Trong ví dụ này, bộ đệm không an toàn với độ dài được cung cấp sẽ được triển khai bằng cách sử dụng lệnh “ Bộ đệm.allocUnsafe() ' phương pháp:



đã từng là không an toànBuff = Đệm. phân bổKhông an toàn ( 13 ) ;
bảng điều khiển. nhật ký ( không an toànBuff ) ;

Trong đoạn mã trên, kích thước của “ 13 ” được cung cấp cho “ Bộ đệm.allocUnsafe() ” phương pháp tạo Bộ đệm không an toàn có độ dài “ 13 ”. Bộ đệm này sau đó cũng được hiển thị trên bảng điều khiển với sự trợ giúp của nút “ console.log() ' phương pháp.

Kết quả được tạo ra sau khi biên dịch đoạn mã trên trông như thế này:

Ví dụ 2: Chuyển đổi bộ đệm không an toàn thành bộ đệm an toàn

Trong trường hợp này, “ Bộ đệm không an toàn ” sắp được triển khai thì nó sẽ được chuyển đổi thành “ Bộ đệm an toàn ” bằng cách gán cho nó các giá trị:

đã từng là không an toàn = Đệm. phân bổKhông an toàn ( 13 ) ;

bảng điều khiển. nhật ký ( 'Hiển thị bộ đệm không an toàn!' )
bảng điều khiển. nhật ký ( không an toàn ) ;

// Làm trống bộ đệm không an toàn và điền vào nó với 11 giây:

không an toàn. đổ đầy ( số 8 ) ;

bảng điều khiển. nhật ký ( 'An toàn bộ đệm đã tạo!' )
bảng điều khiển. nhật ký ( không an toàn ) ;

Mô tả khối mã trên được hiển thị bên dưới:

  • Đầu tiên, Bộ đệm không an toàn được tạo với tên “ không an toàn ” và nó có kích thước là “ 13 ”.
  • Tiếp theo, cái này “ không an toàn ” bộ đệm được hiển thị trên bảng điều khiển.
  • Để chuyển đổi Bộ đệm không an toàn thành Bộ đệm an toàn, hãy gán các giá trị hoặc phần tử cho Bộ đệm có tên “không an toàn” này bằng cách sử dụng thuộc tính “ đổ đầy() ' phương pháp.
  • Cuối cùng hiển thị Buffer trên cửa sổ console.

Đầu ra được tạo sau khi biên dịch mã cho thấy rằng trong các giá trị hiện tại không an toàn được gán nhưng Bộ đệm được tạo và bằng cách gán các giá trị, nó trở thành Bộ đệm an toàn:

Đó là tất cả về việc phân bổ bộ đệm Không an toàn bằng Buffer.allocUnsafe() trong Node.js.

Phần kết luận

Để phân bổ Bộ đệm không an toàn với “ Bộ đệm.allocUnsafe() ” chuyển độ dài của Bộ đệm ở định dạng số nguyên bên trong dấu ngoặc đơn của nó và Bộ đệm trống với độ dài được cung cấp sẽ được tạo. Để chuyển đổi vùng không an toàn thành Bộ đệm an toàn, hãy gán các giá trị cho nó bằng cách sử dụng “ đổ đầy() ' phương pháp. Hướng dẫn này đã trình bày quy trình phân bổ Bộ đệm không an toàn bằng cách sử dụng Buffer.allocUnsafe().