阅读量:0
在C#中,您可以使用System.Span<byte>
或System.Memory<byte>
来表示一个字节缓冲区
方法1:使用System.Span
using System; class Program { static void Main() { // 创建一个长度为10的字节缓冲区 Span<byte> byteBuffer = new byte[10]; // 初始化字节缓冲区 for (int i = 0; i< byteBuffer.Length; i++) { byteBuffer[i] = (byte)i; } // 打印字节缓冲区内容 foreach (byte b in byteBuffer) { Console.WriteLine(b); } } }
方法2:使用System.Memory
using System; class Program { static void Main() { // 创建一个长度为10的字节缓冲区 Memory<byte> byteBuffer = new byte[10]; // 初始化字节缓冲区 for (int i = 0; i< byteBuffer.Length; i++) { byteBuffer.Span[i] = (byte)i; } // 打印字节缓冲区内容 foreach (byte b in byteBuffer.Span) { Console.WriteLine(b); } } }
这两种方法都可以用于创建和初始化字节缓冲区。System.Span<byte>
和System.Memory<byte>
之间的主要区别在于,Memory<byte>
是可分配的,而Span<byte>
不是。这意味着您可以将Memory<byte>
传递给异步方法,而Span<byte>
不能。在大多数情况下,您可以根据需要选择使用哪种类型的缓冲区。