private void Dealloc() { WeakReference.IsInvalid = true; lock (AttachedValueHolders) AttachedValueHolders.Remove(WeakReference.Handle); Dispose(); }
private void Dealloc() { WeakReference.IsInvalid = true; lock (AttachedValueHolders) AttachedValueHolders.Remove(WeakReference.Handle); if (PlatformExtensions.AttachedValueProviderSuppressFinalize) { GC.SuppressFinalize(this); } else { Dispose(); } }