public void HandleLogEvent(Object data) { lock (lockRoot) { RQLOG_EVENT rqle = (RQLOG_EVENT)data; using (TextWriter tw = new StreamWriter(@"c:\support\TeleQ.log", true)) { tw.WriteLine(rqle.ToString()); } } }
public void Listen() { using (UdpClient udpClient = new UdpClient(1134, AddressFamily.InterNetwork)) { Console.WriteLine("Listening for TeleQ log events ..."); while (true) { try { IPEndPoint ep = new IPEndPoint(IPAddress.Any, 1134); byte[] data = udpClient.Receive(ref ep); RQLOG_EVENT rqle = ByteArrayToStructure <RQLOG_EVENT>(data); ThreadPool.QueueUserWorkItem(HandleLogEvent, rqle); } catch (Exception ex) { Console.WriteLine(ex.ToString()); break; } } } }