public void Dispose() { if (_udp_peer != null) { try { if (this.IsJoinMulticast) { _udp_peer.DropMulticastGroup(this.MulticastAddress); } } catch { } _udp_peer.Dispose(); _udp_peer = null; } }