They had synchronization points on the hardware platform as well. The difference is that they had some amount of hardware support that made the thread check-in extremely fast.
Re:Rust vs. Go
by mike_hearn on Thursday January 19, 2017 @04:02AM
(#13434241)
I think Zing has always had safe points.
On the other hand, Shenandoah has an explicit synchronisation phase in its algorithm (not sure if that's a fundamental property of the algorithm or just a JVM limitation though). From [0] (that was 2 years ago, things might have improved since, but I can't find a more recent version).
> Pauses only long enough to scan root set
[0]: https://rkennke.files.wordpress.com/2014/02/shenandoahtake4....