private static void SocketListner(object value) { Loopback loopback = (Loopback)value; loopback.OpenSocket(); while (true) { if (loopback.socket.Poll(SOCKET_TIMEOUT, SelectMode.SelectRead)) { byte[] buffer = new byte[RX_BUFFER_LENGTH]; EndPoint endPoint = new IPEndPoint(IPAddress.Any, 0); int bytesRead = loopback.socket.ReceiveFrom(buffer, ref endPoint); if (bytesRead > 0) { if (((IPEndPoint)endPoint).Address.Equals(IPAddress.Parse("127.0.0.1"))) { Console.WriteLine("Messag from local host."); } else { Console.WriteLine("Messag from remote host."); } } } } }
//This is the console application entry point. public static void Main() { Loopback loopback = new Loopback(); int delayInMilliseconds = 500; while (true) { Thread.Sleep(delayInMilliseconds); loopback.Sender(); } }