SocketAsyncEventArgs.BufferList 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个要用于异步套接字方法的数据缓冲区数组。
public:
property System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ BufferList { System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ get(); void set(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ value); };
public System.Collections.Generic.IList<ArraySegment<byte>> BufferList { get; set; }
public System.Collections.Generic.IList<ArraySegment<byte>>? BufferList { get; set; }
member this.BufferList : System.Collections.Generic.IList<ArraySegment<byte>> with get, set
Public Property BufferList As IList(Of ArraySegment(Of Byte))
属性值
一个 IList,表示要用于异步套接字方法的数据缓冲区数组。
例外
存在不明确的缓冲区,这些缓冲区是在 set 操作上指定的。 如果 Buffer 属性已设置为非空值并且尝试将 BufferList 属性设置为非空值,将引发此异常。
注解
此属性与 Socket.ReceiveAsync 和 Socket.SendAsync 方法一起使用。
此属性用于提供要发送的多个数据缓冲区,或提供多个缓冲区,用于存储接收数据的异步套接字操作(可以发送或接收数据)的接收数据。 和 Socket.SendAsync 方法支持使用 BufferList 属性的Socket.ReceiveAsync多个缓冲区。
如果属性 BufferList 设置为非 null 值,则该 Buffer 属性必须为 null,并且被 Socket.ReceiveAsync 和 Socket.SendAsync 方法忽略。
Buffer如果 设置为非 null 值,并且尝试将 BufferList 属性设置为非 null 值,则会引发异常。
如果 属性 BufferList 设置为非 null 值,则 Socket.ConnectAsync 和 Socket.AcceptAsync 方法将引发 ArgumentException。
BufferList参数被 Socket.DisconnectAsync 和 Socket.SendPacketsAsync 方法忽略。