Re:A Tour of Safe Tracing GC Designs in Rust
by uluyol on Saturday June 19, 2021 @09:38AM
(#27560370)
The signal based mechanism is only used for stragglers.
Go still uses the function call check. The runtime devs found a way to combine it with a check to see if the goroutine's stack needs to be resized, so it doesn't actually cost anything.
Is it still the case after Go 1.14 (February 2020) when asynchronous preemption was implemented? As far as I know, goroutines are now preempted using signals instead of inserting checks at every function call.