System.Net.Sockets.TcpListener.EndAcceptSocket C# (CSharp) Méthode

EndAcceptSocket() public méthode

public EndAcceptSocket ( IAsyncResult asyncResult ) : Socket
asyncResult IAsyncResult
Résultat Socket
        public Socket EndAcceptSocket(IAsyncResult asyncResult)
        {
            if (NetEventSource.IsEnabled) NetEventSource.Enter(this);

            if (asyncResult == null)
            {
                throw new ArgumentNullException(nameof(asyncResult));
            }

            LazyAsyncResult lazyResult = asyncResult as LazyAsyncResult;
            Socket asyncSocket = lazyResult == null ? null : lazyResult.AsyncObject as Socket;
            if (asyncSocket == null)
            {
                throw new ArgumentException(SR.net_io_invalidasyncresult, nameof(asyncResult));
            }

            // This will throw ObjectDisposedException if Stop() has been called.
            Socket socket = asyncSocket.EndAccept(asyncResult);

            if (NetEventSource.IsEnabled) NetEventSource.Exit(this, socket);
            return socket;
        }

Usage Example

 public static TestConnection CreateConnection()
 {
     var listener = new TcpListener(IPAddress.Loopback, 0);
     listener.Start();
     var ar = listener.BeginAcceptSocket(null, null);
     var s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
     s.Connect(IPAddress.Loopback, ((IPEndPoint) listener.LocalEndpoint).Port);
     var server = listener.EndAcceptSocket(ar);
     return new TestConnection {Client = s, Server = server};
 }
All Usage Examples Of System.Net.Sockets.TcpListener::EndAcceptSocket