TcpListener.AcceptSocketAsync Method

Definition

Overloads

AcceptSocketAsync()

Accepts a pending connection request as an asynchronous operation.

AcceptSocketAsync(CancellationToken)

Accepts a pending connection request as a cancellable asynchronous operation.

AcceptSocketAsync()

Accepts a pending connection request as an asynchronous operation.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::Socket ^> ^ AcceptSocketAsync();
public System.Threading.Tasks.Task<System.Net.Sockets.Socket> AcceptSocketAsync ();
member this.AcceptSocketAsync : unit -> System.Threading.Tasks.Task<System.Net.Sockets.Socket>
Public Function AcceptSocketAsync () As Task(Of Socket)

Returns

The task object representing the asynchronous operation. The Result property on the task object returns a Socket used to send and receive data.

Exceptions

The listener has not been started with a call to Start().

Remarks

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

The Socket returned in Task<TResult> is initialized with the IP address and port number of the remote host. You can use any of the Send and Receive methods available in the Socket class to communicate with the remote host. When you are finished using the Socket, be sure to call its Close method. If your application is relatively simple, consider using the AcceptTcpClient method rather than the AcceptSocketAsync method. TcpClient provides you with simple methods for sending and receiving data over a network in blocking synchronous mode.

Note

This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by AcceptSocket().

See also

Applies to

AcceptSocketAsync(CancellationToken)

Accepts a pending connection request as a cancellable asynchronous operation.

public:
 System::Threading::Tasks::ValueTask<System::Net::Sockets::Socket ^> AcceptSocketAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask<System.Net.Sockets.Socket> AcceptSocketAsync (System.Threading.CancellationToken cancellationToken);
member this.AcceptSocketAsync : System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.Socket>
Public Function AcceptSocketAsync (cancellationToken As CancellationToken) As ValueTask(Of Socket)

Parameters

cancellationToken
CancellationToken

A cancellation token that can be used to cancel the asynchronous operation.

Returns

The task object representing the asynchronous operation. The Result property on the task object returns a Socket used to send and receive data.

Exceptions

The cancellation token was canceled. This exception is stored into the returned task.

Remarks

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

The Socket returned in Task<TResult> is initialized with the IP address and port number of the remote host. You can use any of the Send and Receive methods available in the Socket class to communicate with the remote host. When you are finished using the Socket, be sure to call its Close method. If your application is relatively simple, consider using the AcceptTcpClient method rather than the AcceptSocketAsync method. TcpClient provides you with simple methods for sending and receiving data over a network in blocking synchronous mode.

Note

This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by AcceptSocket().

Applies to