private async Task ConnectorWorker(CancellationToken cancelToken)
{
while (!cancelToken.IsCancellationRequested)
{
try
{
if (this.socket == null)
{
this.socket = new UdpClient();
var addresses = await Dns.GetHostAddressesAsync(this.connectToHostName);
this.socket.Connect(addresses.First(), this.connectToPort);
this.socket.BeginReceive(Socket_DataReceived, null);
}
await SendConnectMessageAsync();
}
catch (Exception ex)
{
Debug.WriteLine("Error in ConnectorWorker " + ex.ToString());
}
cancelToken.WaitHandle.WaitOne(5000);
}
}