Я не знаю более авторитетного ответа, чем исходный код, и да, вы правы в своем ответе - освобождение памяти произойдет только после полного G C (по крайней мере, до это JEP).
Для java -8:
Этот аргумент имеет значение, посмотрите здесь, например, .
Этот код не очень сложен для понимания, и здесь - это фактическое сокращение, которое происходит.
Чтобы получить более подробный ответ (относительно java -11, но все еще соответствует java -8), прочитайте this .
Итог это то, что флаг имеет значение , но как именно зависит от реализации. На ваш вопрос нет простого ответа.