Thread GC non "stop-the-world"
Sean Kelly via Digitalmars-d
digitalmars-d at puremagic.com
Fri Nov 21 08:10:34 PST 2014
On Friday, 21 November 2014 at 10:24:09 UTC, Kagamin wrote:
> On Thursday, 25 September 2014 at 21:59:15 UTC, Sean Kelly
> wrote:
>> On Thursday, 25 September 2014 at 13:55:42 UTC, Wyatt wrote:
>>>
>>> The caveat for D being this design requires read and write
>>> barriers and I'm pretty sure I recall correctly that those
>>> have been vetoed several times for complexity.
>>
>> Pretty much for reasons of being able to call C functions and
>> inline asm code. Memory barriers may still be possible in
>> these scenarios, but they would be extremely expensive.
>
> BTW, C usually accepts data only for reading, and writes mostly
> strings and buffers - plain data without pointers. In both
> cases it doesn't need to notify GC (as far as I understand
> write barriers).
"usually" isn't sufficient if you're trying to make a GC that
doesn't collect live data. It's possible that we could do
something around calls to extern (C) functions that accept a type
containing pointers, but I'd have to give this some thought.
More information about the Digitalmars-d
mailing list