- vừa được xem lúc

Span<T> trong C#

0 0 1

Người đăng: Long Tiến

Theo Viblo Asia

Span<T> là một phần của System.Memory namespace trong C# và được giới thiệu từ C# 7.2 trở đi. Nó là một kiểu dữ liệu ánh xạ (memory-safe) cho phép bạn làm việc trực tiếp với dãy dữ liệu mà không cần sao chép dữ liệu đó. Span<T> cho phép bạn thực hiện các thao tác trên mảng dữ liệu mà không cần tạo bản sao của nó, giúp tối ưu hóa hiệu suất và tiết kiệm bộ nhớ.

Cách sử dụng Span<T> là như sau:

  1. Khởi tạo một Span<T> từ một mảng hoặc chuỗi dữ liệu:
int[] array = { 1, 2, 3, 4, 5 };
Span<int> span = new Span<int>(array);
  1. Thực hiện các thao tác trên Span<T> như bạn thao tác trên mảng thông thường:
span[2] = 42;
int sum = span.Slice(1, 3).Sum(); // Tính tổng các phần tử từ index 1 đến index 3
  1. Span<T> cũng hỗ trợ nhiều phương thức mạnh mẽ như Slice, ToArray, CopyTo, và nhiều phương thức khác để thao tác với dữ liệu.

Span<T> rất hữu ích khi bạn muốn làm việc với dữ liệu mà không muốn tạo bản sao của nó, giúp tối ưu hóa hiệu suất của ứng dụng của bạn, đặc biệt trong các tình huống yêu cầu xử lý dữ liệu nhanh chóng và hiệu quả.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Các loại tham chiếu Nullable trong C# (Phần 1)

1. Giới thiệu. C# 8.0 giới thiệu kiểu tham chiếu nullable và kiểu tham chiếu non-nullable cho phép bạn đưa ra các lựa chọn quan trọng về thuộc tính cho các biến kiểu tham chiếu:.

0 0 36

- vừa được xem lúc

Command pattern qua ví dụ !

Command pattern là gì . Command pattern khá phổ biến trong C #, đặc biệt khi chúng ta muốn trì hoãn hoặc xếp hàng đợi việc thực hiện một yêu cầu hoặc khi chúng ta muốn theo dõi các hoạt động. Hơn nữa, chúng ta có thể hoàn tác tác chúng. .

0 0 178

- vừa được xem lúc

Hiểu Liskov Substitution Principle qua ví dụ !

Liskov Substitution Principle là gì . Nguyên tắc đóng mở xác đinh rằng các instance của lớp con có thể thay thế được instance lớp cha mà vẫn đảm bảo tính đúng đắn của chương trình.

0 0 24

- vừa được xem lúc

Creating custom Controls Wpf

Introduction. Wpf/winforms provides various controls like Buttons, Textbox, TextBlock, Labels etc.

0 0 41

- vừa được xem lúc

[P1] Chọn công nghệ nào để xây dựng website?

Hiện nay nhu cầu phát triển website, app tăng rất cao do xu hướng "số hóa 4.0" trong và ngoài nước.

0 0 71

- vừa được xem lúc

Kiểu dữ liệu trong C#

Dẫn nhập. Ở bài BIẾN TRONG C# chúng ta đã tìm hiểu về biến và có một thành phần không thể thiếu khi khai báo biến – Đó là kiểu dữ liệu.

0 0 24