аналогии с sync.Pool в Go и вообще актуален ли object pooling ? Речь про то, чтобы держать пул объектов и переписпользовать их, вместо того, чтобы каждый раз GC нагревать. Скажем летят из Kafka события, происходит их парсинг из Json, каждый раз +- 10 000 объектов создается, а рядышком как раз пул из +- 10к аллоцированных объектов, прочитал, поработал, зачистил поля и отправил обратно в пул
ну только если объекты строк переиспользовать, но интернирование - это очень шаткая тема. В целом, нулевые поколения ГЦ (я хз как в JVM их называют) заточены на короткоживущие объекты. Это уже почти как аренный аллокатор
В jvm разные gc, есть и под разные задачи. Но я не понял пр 0-поколение, в чем его смысл ?
Нашёл. оно называется Eden! (в дотнете 0, да)
(да понял я)
Но не исправил!
Обсуждают сегодня