private void StartListener() { if (listener != null) { return; } listener = new MulticastUdpListener(listenAddress, port, localMachineOnly); listener.OnMessage = (ep, data) => { try { if (data.Length == 0) { return; } ReadMessage(data); } catch { // silently swallow "bad" messages } }; listener.Start(); expiryTimer = new Timer(_ => CheckExpiry(), null, TimeSpan.FromSeconds(timeToLive), TimeSpan.FromSeconds(timeToLive)); }
private void StopListener() { if (listener == null) { return; } listener.Stop(); listener = null; }