HttpListenerContext::AcceptWebSocketAsync Method (String^, Int32, TimeSpan, ArraySegment<Byte>)

.NET Framework (current version)
 

Accept a WebSocket connection specifying the supported WebSocket sub-protocol, receive buffer size, WebSocket keep-alive interval, and the internal buffer as an asynchronous operation.

Namespace:   System.Net
Assembly:  System (in System.dll)

public:
Task<HttpListenerWebSocketContext^>^ AcceptWebSocketAsync(
	String^ subProtocol,
	int receiveBufferSize,
	TimeSpan keepAliveInterval,
	ArraySegment<unsigned char> internalBuffer
)

Parameters

subProtocol
Type: System::String^

The supported WebSocket sub-protocol.

receiveBufferSize
Type: System::Int32

The receive buffer size in bytes.

keepAliveInterval
Type: System::TimeSpan

The WebSocket protocol keep-alive interval in milliseconds.

internalBuffer
Type: System::ArraySegment<Byte>

An internal buffer to use for this operation.

Return Value

Type: System.Threading.Tasks::Task<HttpListenerWebSocketContext^>^

Returns Task<TResult>.

The task object representing the asynchronous operation. The Result property on the task object returns an HttpListenerWebSocketContext object.

Exception Condition
ArgumentException

subProtocol is an empty string

-or-

subProtocol contains illegal characters.

ArgumentOutOfRangeException

keepAliveInterval is too small.

-or-

receiveBufferSize is less than 16 bytes

-or-

receiveBufferSize is greater than 64K bytes.

WebSocketException

An error occurred when sending the response to complete the WebSocket handshake.

This operation will not block. The returned Task<TResult> object will complete after the WebSocket connection has been accepted.

.NET Framework
Available since 4.5
Return to top
Show: