On Tuesday, 24 February 2015 at 17:07:03 UTC, Ola Fosheim Grøstad
wrote:
But if you can control where the code is running when you run
the GC scan then you might as well have a separate code path
for concurrent GC too (i.e. two versions of the code). One with
fences and one without...
I'd say this is impractical. You could only reasonably expect
this to work at certain checkpoints, say, an event loop with
short calls into the "actual" application code. You cannot simply
switch right in the middle of a deep call.
And with Sociomantic's GC, you don't have any more "control" over
the GC than you have with the current one in druntime.