internal void Close() { Subscription sub = null; if (!Subscriptions.TryRemove(_key, out sub)) { sub = null; } if (sub != null && sub != this) { sub.Abort(); } Abort(); }