Re: Anonymous mapped regions increases unlimitely on spawn

2018-12-14 Thread Boris-Barboris via Digitalmars-d-learn

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).


Re: Anonymous mapped regions increases unlimitely on spawn

2018-12-14 Thread unDEFER via Digitalmars-d-learn

So it looks like a bug, and I have reported about it:

https://issues.dlang.org/show_bug.cgi?id=19487


Re: Anonymous mapped regions increases unlimitely on spawn

2018-12-14 Thread unDEFER via Digitalmars-d-learn

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?


Re: Anonymous mapped regions increases unlimitely on spawn

2018-12-14 Thread unDEFER via Digitalmars-d-learn
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;
printf("detach Thread\n");

I recompiled phobos to apply changes to druntime and I see that 
"start Thread" there is, but "detach Thread" printed only at the 
end of process even if I do GC.collect().


So dtor of class Thread doesn't call on GC. Why?