From 9fcbdbab2512379451972bd65929a9939239853c Mon Sep 17 00:00:00 2001 From: ryuukk <44361234+ryuukk@users.noreply.github.com> Date: Tue, 27 Aug 2024 09:58:59 +0200 Subject: [PATCH] Optimize memory usage --- dsymbol/src/dsymbol/modulecache.d | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dsymbol/src/dsymbol/modulecache.d b/dsymbol/src/dsymbol/modulecache.d index ca1ba9f..492d205 100644 --- a/dsymbol/src/dsymbol/modulecache.d +++ b/dsymbol/src/dsymbol/modulecache.d @@ -149,6 +149,7 @@ struct ModuleCache DSymbol* cacheModule(string location) { import std.stdio : File; + import core.memory: GC; assert (location !is null); @@ -160,6 +161,8 @@ struct ModuleCache if (!needsReparsing(cachedLocation)) return getEntryFor(cachedLocation).symbol; + scope(exit) GC.collect(); + recursionGuard.insert(&cachedLocation.data[0]); File f = File(cachedLocation);