From 71ac87539fe3367b2840fae2ee997a2c0e720d76 Mon Sep 17 00:00:00 2001 From: qhy040404 Date: Mon, 29 Apr 2024 18:47:49 +0800 Subject: [PATCH] Trigger GC after disposing ViewModel --- src/Snap.Hutao/Snap.Hutao/Control/ScopedPage.cs | 1 + .../Snap.Hutao/Control/ScopedPageScopeReferenceTracker.cs | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Snap.Hutao/Snap.Hutao/Control/ScopedPage.cs b/src/Snap.Hutao/Snap.Hutao/Control/ScopedPage.cs index fab66976..685f7f70 100644 --- a/src/Snap.Hutao/Snap.Hutao/Control/ScopedPage.cs +++ b/src/Snap.Hutao/Snap.Hutao/Control/ScopedPage.cs @@ -104,6 +104,7 @@ internal class ScopedPage : Page // Dispose the scope pageScope.Dispose(); + GC.Collect(GC.MaxGeneration, GCCollectionMode.Aggressive, true); } } } diff --git a/src/Snap.Hutao/Snap.Hutao/Control/ScopedPageScopeReferenceTracker.cs b/src/Snap.Hutao/Snap.Hutao/Control/ScopedPageScopeReferenceTracker.cs index a7d71682..04a5c873 100644 --- a/src/Snap.Hutao/Snap.Hutao/Control/ScopedPageScopeReferenceTracker.cs +++ b/src/Snap.Hutao/Snap.Hutao/Control/ScopedPageScopeReferenceTracker.cs @@ -22,7 +22,6 @@ internal sealed partial class ScopedPageScopeReferenceTracker : IScopedPageScope public IServiceScope CreateScope() { - GC.Collect(GC.MaxGeneration, GCCollectionMode.Aggressive, true); IServiceScope currentScope = serviceProvider.CreateScope(); // In case previous one is not disposed.