> What keeps an interrupt from happening while a GC is finishing up and switching > the from and to space? Unless all the reads and writes are in just the right > order then can't this cause the limit to point into the wrong (from or to) > space? God I hate threads. Signals are blocked for the duration of GC -- see GC_enter and leave. Again, this problem arises just from support of signals.