On 8/17/15 3:57 PM, welkam wrote:
// if the GC kicks in here we're f*****

Why?

static nothrow @nogc void removeRange(in void* p);
Removes the memory range starting at p from an internal list of ranges
to be scanned during a collection. <...>

Because presumably the reason why you have added the range is because it's not GC memory (as in this case). This means that if a GC run kicks in right then, that range of data will not be scanned, and the GC memory it may have been pointing at could potentially be freed.

-Steve

Reply via email to