public void Unsubscribe(string topic) { if (string.IsNullOrEmpty(topic)) { throw new ArgumentException("Topic must not be empty", nameof(topic)); } var isKnown = _subscriptions.TryGetValue(topic, out var subscription); if (!isKnown) { return; } _subscriptions.Remove(topic); _messaging.Unsubscribe(subscription); }
public void Dispose() { if (_subscriptionHandles == null) { return; } Array.ForEach(_subscriptionHandles, handle => _messaging.Unsubscribe(handle)); _subscriptionHandles = null; }