On Friday, 14 December 2018 at 21:22:05 UTC, unDEFER wrote: So it looks like a bug, and I have reported about it: https://issues.dlang.org/show_bug.cgi?id=19487 Not an expert, but you may wish to try GC.minimize() (https://dlang.org/phobos/core_memory.html#.GC.minimize).
So it looks like a bug, and I have reported about it: https://issues.dlang.org/show_bug.cgi?id=19487
So more digging.. dtor of Thread calls in GC.collect() if thread is finished. But it's do nothing because bool not_registered = !next && !prev && (sm_tbeg !is this); is always true... So how to register the thread?
So in digging by this problem, I have made simple patch to druntime. I have added in druntime/src/core/thread.d to final Thread start() nothrow of class Thread import core.stdc.stdio; printf("start Thread\n"); And to ~this() nothrow @nogc import core.stdc.stdio;
Hello! I have the program which uses BDB and while testing often makes spawn. And after 12 hours of testing bdb said: mmap: Cannot allocate memory But the problem that I've found that it is not BDB created too many maps. Watching for /proc/[PID]/maps shows that number of anonymous mapped