JS Сборщик мусора - PullRequest
       5

JS Сборщик мусора

0 голосов
/ 21 сентября 2018

JS GC имеет два пробела: молодое и старое.Во-первых, любое распределение переменных происходит в молодом пространстве, и после этого некоторые из них могут быть переведены в старую коллекцию.Молодые коллекции ограничены 1-16 МБ.У меня вопрос: если разработчик объявляет переменную, размер которой больше размера молодого пространства, что произойдет?Эта переменная переведена в старое пространство напрямую?

1 Ответ

0 голосов
/ 21 сентября 2018

Как именно работает сборщик мусора (например, использует ли он полупространство молодого поколения ), зависит от реализации, т. Е. Варьируется в зависимости от времени выполнения javascript и не так уж важно, если только вы не хотите углублятьсяв область оптимизации производительности.

Поведение, которое вы описываете там, является специфическим для конкретной реализации, а не общим свойством стандартизированного языка JavaScript.

Что важно, чтобы сборщики обеспечивали поведение, предписанноеспецификация.И в спецификации ничего не сказано о конкретном пороговом размере, таком как 16 МБ, после которого объекты должны обрабатываться по-разному.

Эта переменная напрямую переносится в старое пространство?

Это была бы одна из возможных стратегий реализации.

...