simen.kjaras at gmail.com
Sun Mar 28 08:00:42 PDT 2010
sclytrack <idiot at hotmail.com> wrote:
> gc1 thread1
> gc2 thread4
> when the gc1 cycles it does not block the gc2 threads. Would that be of
> any use?
> Or possible. And only use communication like between two processes, some
> interprocess communication message passing thing.
> I mean the entire pure thing makes heavy use of the garbage collector,
> isolating them is a solution, just let it cycle independent from the
> But on the other hand you could just make two processes.
This has been discussed for D2's concurrency system, often in conjunction
with per-thread heaps. The most likely system (as far as I've understood),
is a global GC in the main thread, that takes care of shared objects, and
per-thread GCs for thread-local storage. Problems may occur when objects
are moved from one thread to another, or when created in one thread and
later cast to shared.
Granted, I am no GC expert, so everything written above should be taken a
pinch or two of salt.
More information about the Digitalmars-d-learn