Go's march to low-latency GC
Chris Wright via Digitalmars-d
digitalmars-d at puremagic.com
Sat Jul 9 12:11:22 PDT 2016
On Fri, 08 Jul 2016 22:35:05 +0200, Martin Nowak wrote:
> On 07/08/2016 07:45 AM, ikod wrote:
>> Correct me if I'm wrong, but in D fibers allocate stack statically, so
>> we have to preallocate large stacks.
>>
>> If yes - can we allocate stack frames on demand from some non-GC area?
>
> Fiber stacks are just mapped virtual memory pages that the kernel only
> backs with physical memory when they're actually used. So they already
> are allocated on demand.
The downside is that it's difficult to release that memory. On the other
hand, Go had a lot of problems with its implementation in part because it
released memory. At some point you start telling users: if you want a
fiber that does a huge recursion, dispose of it when you're done. It's
cheap enough to create another fiber later.
More information about the Digitalmars-d
mailing list