public void Connect(IPEndPoint remoteEndPoint)
{
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
var connectArgs = new SocketAsyncEventArgs();
connectArgs.RemoteEndPoint = remoteEndPoint;
connectArgs.Completed += OnConnectComplete;
try
{
if (!_socket.ConnectAsync(connectArgs))
OnConnectComplete(_socket, connectArgs);
}
catch (SocketException e)
{
HandleSocketError(e.SocketErrorCode);
}
}