On 1/7/2012 5:54 PM, Manu wrote:
On 8 January 2012 03:46, Walter Bright <newshou...@digitalmars.com
<mailto:newshou...@digitalmars.com>> wrote:
It should also be possible to do the gc in another thread running at low
priority, if the only other running thread is doing the critical stuff and
is not the sole holder of references to any GC allocated memory it is using.
... sound like unreliable restrictions. Now sure I follow exactly what you mean
by 'only other running thread', and 'critical stuff'.
The gc pauses all threads to run the collection cycle. But if a thread does not
uniquely hold roots to gc memory, then it can be left running. The gc thread can
then be made low priority, and the other running thread(s) high priority.
Presumably those other running threads would then be the time critical ones.