You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

49 rivejä
1.1 KiB

  1. using System;
  2. using System.Diagnostics;
  3. using System.Net;
  4. using System.Net.Sockets;
  5. using System.Threading;
  6. using System.Threading.Tasks;
  7. namespace JT808.DotNetty.Core
  8. {
  9. internal class JT808SimpleUdpClient
  10. {
  11. private UdpClient udpClient;
  12. public JT808SimpleUdpClient(IPEndPoint remoteAddress)
  13. {
  14. udpClient = new UdpClient();
  15. udpClient.Connect(remoteAddress);
  16. Task.Run(() =>
  17. {
  18. while (true)
  19. {
  20. try
  21. {
  22. string tmp = string.Join(" ", udpClient.Receive(ref remoteAddress));
  23. Console.WriteLine(Thread.CurrentThread.ManagedThreadId + " " + tmp);
  24. Thread.Sleep(1000);
  25. }
  26. catch
  27. {
  28. }
  29. Thread.Sleep(1000);
  30. }
  31. });
  32. }
  33. public void WriteAsync(byte[] data)
  34. {
  35. udpClient.SendAsync(data, data.Length);
  36. }
  37. public void Down()
  38. {
  39. udpClient.Close();
  40. }
  41. }
  42. }