internal bool ContainsSubscriptions(SubscriptionBase sub) { _subscriptionLock.EnterReadLock(); try { return(Subscriptions.Contains(sub)); } finally { _subscriptionLock.ExitReadLock(); } }
internal void AddSubscription(SubscriptionBase sub) { _subscriptionLock.EnterUpgradeableReadLock(); try { if (!Subscriptions.Contains(sub)) { _subscriptionLock.EnterWriteLock(); Subscriptions.Add(sub); _subscriptionLock.ExitWriteLock(); } } finally { _subscriptionLock.ExitUpgradeableReadLock(); } }