@ada@zoner.work I mean, in many cases, neither do native applications, their resident set size often doesn't shrink despite freeing memory, it's just handled closer to the kernel
Conversation
Notices
-
Embed this notice
Natty :butterflyN: (natty@astolfo.social)'s status on Monday, 27-May-2024 09:59:00 JST Natty :butterflyN: - Doughnut Lollipop 【記録係】:blobfoxgooglymlem: likes this.
-
Embed this notice
small, versatile 6DoF c++ witch *ada (ada@zoner.work)'s status on Monday, 27-May-2024 09:59:02 JST small, versatile 6DoF c++ witch *ada reminder that most garbage collectors don't really free memory, they reuse buffers.
if you're lucky the runtime will clear it.
most languages with a runtime have a memory arena for this purpose. C# has three, Unity has five (3 from C# and then two engine specific.)
so depending on the GC to free memory might still leave a gigantic allocated buffer in memory until for whatever reason it decides to free this.
C# in fact, never does. you have to manually set a hard limit using environment flags.