емнип это не специфицировано
Короткий ответ — всё сложно. Это делается так, чтобы программа ничего не заметила.
GC, не ориентированные на сверхнизкие паузы, делают такое, пока программа стоит (STW), поэтому это не важно.
С точки зрения приложения "одновременно" (потому как оно либо остановлено и видит всё "после"; либо ещё какой дичью через барьеры достигается). С точки зрения реализации GC, бывает и так, и эдак.
Обсуждают сегодня