微软程序分析之socket tcp tcp 之客户端 GIS

using System.Net.Sockets;

Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

  SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs();

socketEventArg.UserToken = sock;

  socketEventArg.RemoteEndPoint = hostEntry;

DnsEndPoint hostEntry = new DnsEndPoint(_serverName, _port);

sock.ConnectAsync(socketEventArg);

socketEventArg.Completed += new EventHandler<SocketAsyncEventArgs>(SocketEventArg_Completed);

void SocketEventArg_Completed(object sender, SocketAsyncEventArgs e)
     {
         switch (e.LastOperation)
         {
             case SocketAsyncOperation.Connect:
                 ProcessConnect(e);
                 break;
             case SocketAsyncOperation.Receive:
                 ProcessReceive(e);
                 break;
             case SocketAsyncOperation.Send:
                 ProcessSend(e);
                 break;
             default:
                 throw new Exception("Invalid operation completed");
         }
     }

image

原文地址:https://www.cnblogs.com/gisbeginner/p/2557463.html