Kotlin: ¿Cómo puedo evitar el autoboxing (basura) en las properties delegadas?

En mi software, tengo varios valores que usan la delegación de properties.

Este es un simple ejemplo similar que muestra lo que hago:

class ExampleDelegate<T>(val value: T) { operator fun getValue(thisRef: Any?, property: KProperty<*>) = value } val example by ExampleDelegate(1000) // number larger than 127 (no box cache) 

Lo que he notado, sin embargo, es que al referirse a este valor parece crear un object autoboxado ( java.lang.Integer ) en CADA reference. Debido a que el valor debe ser referencedo potencialmente millones o veces por segundo, esto genera una gran cantidad de basura para mi software; se pone mucho estrés en el recolector de basura.

¿Hay alguna manera de evitar los gastos generales? Si no es directamente, ¿hay alguna forma inteligente de "emular" la delegación de properties que esté funcionando?

enter image description here

Enviado un informe de error en YouTrack: https://youtrack.jetbrains.com/issue/KT-13606