// IMPORTANT: don't cache a reference to `other` or `other.Handler` here. // We need to allow it to be GC'ed. public ExpiredHandlerTrackingEntry(ActiveHandlerTrackingEntry other) { Name = other.Name; //Scope = other.Scope; _livenessTracker = new WeakReference(other.Handler); InnerHandler = other.Handler.InnerHandler; }
// Internal so it can be overridden in tests internal virtual void StartHandlerEntryTimer(ActiveHandlerTrackingEntry entry) { entry.StartExpiryTimer(_expiryCallback); }