core.thread.Fiber --- runtime stack overflow unlike goroutines
Dicebot via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Aug 14 16:31:31 PDT 2014
On Thursday, 14 August 2014 at 18:52:00 UTC, Sean Kelly wrote:
> On 64 bit, reserve a huge chunk of memory, set a SEGV handler
> and commit more as needed. Basically how kernel thread stacks
> work. I've been meaning to do this but haven't gotten around to
> it yet.
I think using some sort of thread-local shared heap pool is
better approach in general as it does need any SEGV handling
overhead and simplifies fiber implementation (all fibers are
guaranteed to take fixed amount of memory). It is not a silver
bullet and forces you to think much more about application memory
layout but I believe this is much better approach for high
performance services than segmented stack like in Go.
More information about the Digitalmars-d-learn
mailing list