GC-timing ненаблюдаем: нельзя надёжно «подождать очистки».
Итог
Обычные коллекции — данные, которые вы контролируете. Weak* — связи без удержания lifetime ключа.
На собеседовании
Ожидают не заученную таблицу, а умение связать концепцию с багом из практики: что сломается, если выбрать неправильный вариант, и какой код вы напишете в реальном PR. Короткий пример и граничный случай обычно ценятся выше длинной теории.
Чем `Map`/`Set` отличаются от `WeakMap`/`WeakSet`? · Sobeso