Is heap memory released after the termination of a thread?
Peter Alexander
peter.alexander.au at gmail.com
Thu Jun 13 06:35:53 PDT 2013
On Thursday, 13 June 2013 at 12:50:49 UTC, Vitali wrote:
> Hello,
> in [1] is said that data defined in modules, if it's not
> shared, is copied for each thread. This means that new memory
> for this data is allocated every time when a new thread is
> started and when the thread terminates it is released [2].
>
> But how about the memory created by this thread on the heap? Is
> it released, too, especialy when the garbage collector is
> turned off?
No, it will be released at some undetermined time later by the
garbage collector, assuming nothing else references it. Remember
that heap references can be sent across threads using
std.concurrency.send (if it is safe to do so).
More information about the Digitalmars-d
mailing list