https://issues.dlang.org/show_bug.cgi?id=3523
Steven Schveighoffer <schvei...@yahoo.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |schvei...@yahoo.com --- Comment #15 from Steven Schveighoffer <schvei...@yahoo.com> --- This is pretty old, but I wonder if it's still broken? >From this recent thread, it may already be fixed, as peppering in GC collections seems to solve the problem: https://forum.dlang.org/post/vfqvmyossdcqadgas...@forum.dlang.org I was coming to file a bug on this, but this seems (at least) to be close to explaining what is happening. Note that we have a separate issue with Fibers and GC. The GC only associates a small block with the Fiber -- the Fiber object itself, whereas the stack is huge comparatively. In 32-bit windows, a fiber stack is default 32k. This means that 10,000 Fibers probably takes up 1.2MB in the GC (assuming 128 bytes per fiber), but the stack space is 320MB. There is a lack of correlation here between memory pressure and when the memory should be cleaned up. Would it be possible to deallocate the stack when the Fiber terminates vs. when it's GC'd? That would at least help with Fibers that are completed and just left for garbage. --