On Mon, 23 Mar 2020 16:32:16 GMT, Jeanette Winzenburg <faste...@openjdk.org> 
wrote:

> ChoiceBox leaves a memory leak when replacing the selectionModel. Culprit is 
> ChoiceBoxSelectionModel which registers
> listener with strong references. Fix is to change these to weak references.
> Added test that fails before and passes after the test.
> 
> for convenience, the bug reference 
> https://bugs.openjdk.java.net/browse/JDK-8241455

I have basically the same comment / question as I asked in #147

In general, there are two approaches to avoiding listener-related memory leaks. 
One is to use a WeakListener; the other
is to explicitly remove the listener when the object is removed or otherwise no 
longer needed.

Using a WeakListener is certainly easier, but runs the risk of the listener 
being removed too early and not cleaning up
after itself. I'm not suggesting that's the case here, but it is worth looking 
at.

-------------

PR: https://git.openjdk.java.net/jfx/pull/148

Reply via email to