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.SendAsync方法一起使用Socket.ReceiveAsync。
此属性用于提供要发送的多个数据缓冲区,或提供多个缓冲区,用于存储可发送和接收数据的异步套接字操作的接收数据。 使用属性 BufferList 的多个缓冲区受 Socket.ReceiveAsync 该方法和 Socket.SendAsync 方法支持。
如果属性 BufferList 设置为非 null 值,则该 Buffer 属性必须为 null,并且由 Socket.ReceiveAsync 和 Socket.SendAsync 方法忽略。
Buffer如果设置为非 null 值,并且尝试将BufferList属性设置为非 null 值,则会引发异常。
BufferList如果属性设置为非 null 值,则Socket.ConnectAsync和Socket.AcceptAsync方法将引发一个 ArgumentException。
参数 BufferList 由 Socket.DisconnectAsync 和 Socket.SendPacketsAsync 方法忽略。