System.Net.Sockets.Tests.DualModeConnectAsync.DualModeConnectAsync_IPEndPointToHost_Helper C# (CSharp) Метод

DualModeConnectAsync_IPEndPointToHost_Helper() приватный Метод

private DualModeConnectAsync_IPEndPointToHost_Helper ( IPAddress connectTo, IPAddress listenOn, bool dualModeServer ) : void
connectTo IPAddress
listenOn IPAddress
dualModeServer bool
Результат void
        private void DualModeConnectAsync_IPEndPointToHost_Helper(IPAddress connectTo, IPAddress listenOn, bool dualModeServer)
        {
            int port;
            Socket socket = new Socket(SocketType.Stream, ProtocolType.Tcp);
            using (SocketServer server = new SocketServer(_log, listenOn, dualModeServer, out port))
            {
                ManualResetEvent waitHandle = new ManualResetEvent(false);
                SocketAsyncEventArgs args = new SocketAsyncEventArgs();
                args.Completed += new EventHandler<SocketAsyncEventArgs>(AsyncCompleted);
                args.RemoteEndPoint = new IPEndPoint(connectTo, port);
                args.UserToken = waitHandle;

                socket.ConnectAsync(args);

                Assert.True(waitHandle.WaitOne(TestSettings.PassingTestTimeout), "Timed out while waiting for connection");
                if (args.SocketError != SocketError.Success)
                {
                    throw new SocketException((int)args.SocketError);
                }
                Assert.True(socket.Connected);
            }
        }