Fiber implementation questions

Steven Schveighoffer via Digitalmars-d digitalmars-d at puremagic.com
Tue Jun 21 05:18:37 PDT 2016


On 6/21/16 6:14 AM, Dicebot wrote:
> On 06/20/2016 11:17 PM, deadalnix wrote:
>>> Q2: core.thread.Fiber implementation looks like GC does not scan
>>> function stacks for yielded contexts. Why?
>>>
>>
>> Doesn't it ?
>
> https://github.com/dlang/druntime/blob/master/src/core/thread.d#L4328
> allocates fiber stack using mmap / malloc / VirtualAlloc and doesn't
> seem to register that memory in GC. But that may be indirect result of
> https://github.com/dlang/druntime/blob/master/src/core/thread.d#L4439
> call, which is why I am not sure.

It appears that Fibers interact with the GC differently:

https://github.com/dlang/druntime/blob/master/src/core/thread.d#L1611

-Steve


More information about the Digitalmars-d mailing list