buffer

Hiển Thị Bản Đã Lỗi Thời

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Một bộ nhớ là một đối tượng đại diện cho một khối bộ nhớ có kích thước cố định có thể thay đổi.Thư viện buffer cung cấp các chức năng cho việc tạo và thao tác với các đối tượng buffer, cung cấp tất cả các chức năng của nó bên trong biến toàn cầu buffer.

Buffer được dự định để sử dụng một cấu trúc lưu trữ dữ liệu nhị phân cấp thấp, thay thế cho việc sử dụng của string.pack()string.unpack() .Các trường hợp sử dụng bao gồm đọc và viết các định dạng nhị phân hiện có, làm việc với dữ liệu trong một hình thức gọn gàng hơn, serialization sang các định dạng nhị phân tùy chỉnh, và công việc chung với các loại bộ nhớ bản địa như số cố định và nổi.

Khi được truyền qua API Roblox, bao gồm gửi một bộ nhớ lưu trữ qua sự kiện tùy chỉnh, danh tính của đối tượng bộ nhớ lưu trữ không được giữ và mục tiêu sẽ nhận được một bản sao.Tương tự như các hạn chế khác, cùng một đối tượng bộ nhớ không thể được sử dụng từ nhiều Actor tập lệnh (Parallel Luau).

Nhiều chức năng chấp nhận một offset bằng byte từ đầu của bộ nhớ.Offset của 0 từ đầu của khối bộ nhớ búfer truy cập vào bit đầu tiên.Tất cả các khấu trừ, số lượng và kích thước phải là số nguyên dương không âm.Nếu các bayt được truy cập bởi bất kỳ hoạt động đọc hoặc ghi nào nằm ngoài bộ nhớ tam giác, một lỗi được ném.

Các phương pháp readwrite hoạt động với số nguyên và số thập phân sử dụng mã hóa little-endian.

Tóm Tắt

Chức Năng

Chức Năng

create

Tạo một bộ lưu trữ của kích thước yêu cầu với tất cả các bayt được khởi tạo thành 0 .Giới hạn kích thước là 1 GiB, hoặc 1,073,741,824 bayt.Hãy nhớ rằng các bộ nhớ lớn hơn có thể không thể phân bổ nếu thiết bị đang chạy thấp về bộ nhớ.

Tham Số

size: number

Kích thước của bộ nhớ.

Lợi Nhuận

fromstring

Tạo một bộ nhớ đệm được khởi tạo với nội dung của chuỗi. Kích thước của bộ nhớ đệm bằng chiều dài của chuỗi.

Tham Số

str: string

Lợi Nhuận

tostring

Trả lại dữ liệu bộ nhớ lưu trữ như một chuỗi.

Tham Số

Lợi Nhuận

Trả về kích thước của bộ nhớ trong bytes.

Tham Số

Lợi Nhuận

readbits

Đọc một loạt các bit thành một số không dấu vào một số không dấu từ bộ nhớ dựa trên một số không dấu cụ thể từ đến , bao gồm cả.Ví dụ:

Lưu ý rằng 0 chiều rộng bit chỉ được hỗ trợ để không xảy ra lỗi trong các trường hợp chung khi số bit được động, và đọc 0 bit trả về 0 .Cũng lưu ý rằng, vì kích thước tối đa của bộ nhớ là 1 GB, bitOffset không thể được xử lý như một số nguyên tử 32 bit giống như byte offset trong các chức năng bộ nhớ khác.

Tham Số

bitOffset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

bitCount: number

Bit số nguyên để đã xem. Lỗi được ném nếu giá trị này không nằm trong phạm vi 0 đến 32, bao gồm cả.

Lợi Nhuận

readi8

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số nguyên ký hiệu 8 bit và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readu8

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số 8-bit chưa ký và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readi16

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số nguyên có chữ ký 16 bit và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readu16

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số nguyên 16 bit chưa ký và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readi32

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số nguyên 32 bit đã ký và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readu32

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một số nguyên 32 bit chưa ký và chuyển thành một số.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readf32

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một giá trị nổi 32 bit và chuyển thành một sốNếu giá trị nổi bật khớp với bất kỳ mẫu bit nào đại diện cho NaN (không phải là một số), giá trị trả về có thể được chuyển đổi thành đại diện yên tĩnh khác NaN .

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

readf64

Đọc dữ liệu từ bộ nhớ bằng cách giải mã lại các bayt tại offset như một giá trị nổi 64 bit và chuyển thành một sốNếu giá trị nổi bật khớp với bất kỳ mẫu bit nào đại diện cho NaN (không phải là một số), giá trị trả về có thể được chuyển đổi thành đại diện yên tĩnh khác NaN .

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Lợi Nhuận

writebits

()

Viết dữ liệu vào bộ nhớ đệm dựa trên một số nguyên tố bitCount cụ thể từ 0 đến 32, bao gồm.value được xử lý như một số không có dấu 32 bit và chỉ có bitCount ít bit quan trọng nhất được viết.

Lưu ý rằng 0 chiều rộng bit chỉ được hỗ trợ để không xảy ra lỗi trong các trường hợp chung nơi số bit được động, và viết 0 bit không có hiệu lực.Cũng lưu ý rằng, vì kích thước tối đa của bộ nhớ là 1 GB, bitOffset không thể được xử lý như một số nguyên tử 32 bit giống như byte offset trong các chức năng bộ nhớ khác.

Tham Số

bitOffset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

bitCount: number

Số bit nguyên tử để viết. Lỗi được ném nếu giá trị này không nằm trong phạm vi 0 đến 32, bao gồm cả.

value: number

Số 32-bit chưa ký. Chỉ có bitCount ít nhất các bit quan trọng được viết.

Lợi Nhuận

()

writei8

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số 8 bit có chữ ký và viết một byte duy nhất.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [-128, 127].

Lợi Nhuận

()

writeu8

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số 8 bit không có dấu và viết một byte duy nhất.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [0, 255].

Lợi Nhuận

()

writei16

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số 16 bit có chữ ký và giải mã lại thành các byte riêng lẻ.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [-32,768, 32,767].

Lợi Nhuận

()

writeu16

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số 16 bit không có dấu và lặp lại nó như các byte riêng lẻ.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [0, 65,535].

Lợi Nhuận

()

writei32

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số có chữ ký 32 bit và giải mã lại như các byte riêng lẻ.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [-2,147,483,648, 2,147,483,647].

Lợi Nhuận

()

writeu32

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành một số 32 bit không có dấu và xem lại nó như các bay riêng lẻ.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [0, 4,294,967,295].

Lợi Nhuận

()

writef32

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành giá trị nổi 32 bit và xem xét lại nó như các bay từng cá nhân.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số điểm nổi có độ chính xác duy nhất.

Lợi Nhuận

()

writef64

()

Viết dữ liệu vào bộ nhớ bằng cách chuyển số thành giá trị nổi 64 bit và giải thích lại nó như các bayt riêng lẻ.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số điểm nổi ba chữ số chính xác.

Lợi Nhuận

()

readstring

Đọc một chuỗi dài count từ bộ nhớ tại địa chỉ offset đã được chỉ định.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

count: number

Độ dài để đã xem.

Lợi Nhuận

writestring

()

Viết dữ liệu từ một chuỗi vào bộ nhớ tại offset được chỉ định.Nếu một tùy chọn count được đặc định, chỉ có count bytes được lấy từ chuỗi.

Tham Số

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: string

Dữ liệu để viết.

count: number

Số byte cần lấy từ chuỗi. Giá trị này không thể lớn hơn chiều dài chuỗi.

Lợi Nhuận

()

copy

()

Sao chép count bytes từ source bắt đầu tại offset sourceOffset vào target tại targetOffset .

Nó là có thể cho sourcetarget để giống nhau.Sao chép một khu vực chồng lấp bên trong cùng một bộ nhớ tạm thời hành động như thể khu vực nguồn được sao chép vào bộ nhớ tạm thời và sau đó bộ nhớ đó được sao chép sang mục tiêu.

Tham Số

target: buffer

Buffer để sao chép dữ liệu vào.

targetOffset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

source: buffer

Buffer để lấy dữ liệu từ.

sourceOffset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

Giá Trị Mặc Định: 0
count: number

Số byte để sao chép. Nếu bỏ qua, toàn bộ dữ liệu source bắt đầu từ sourceOffset sẽ được lấy.

Lợi Nhuận

()

fill

()

Bộ count bytes trong bộ nhớ đệm bắt đầu từ offset đến value được xác định.

Tham Số

Bộ nhớ đệm để viết dữ liệu vào.

offset: number

Khấu trừ từ đầu bộ nhớ tam bản, bắt đầu từ 0 .

value: number

Một số nguyên trong phạm vi [0, 255].

count: number

Số byte để viết. Nếu bỏ qua, tất cả các byte sau offset được cài đặt.

Lợi Nhuận

()