Escape analysis определяет выходит ли объект за пределы метода или потока. Если нет — JIT может аллоцировать его на стеке вместо heap (stack allocation), или вообще устранить аллокацию (scalar replacement — поля объекта как отдельные переменные). Это снижает давление на GC. Например, если создаёшь StringBuilder только внутри метода — JIT может не аллоцировать его на heap вообще.
Что такое escape analysis и как она влияет на аллокации?
Senior
343 просмотровAFK Offer AI
Напишите producer-consumer с BlockingQueue