<div dir="ltr"><div>Hi,</div><div><br></div><div>I believe the javadoc in Binding.dispose() is misleading. Before creating an issue for this, it would be good to know if others have other interpretation, or suggestions for improvements.</div><div><br></div><div>I recently ran into a memory leak that was caused by this binding:</div><div><br></div><div>```</div>someDoubleProperty.bind(Bindings.when(someBooleanProperty).then(cell.layoutYProperty()).otherwise(0));<div>...</div><div>someDoubleProperty.unbind();</div><div>```<br><div><br></div><div>This flow creates a memoryleak as the NumberBinding created in the then clause is not using a WeakInvalidationListener, hence it has to be disposed manually.</div><div>However, the javadoc for Binding.dispose() says:<br>```</div><div> All bindings in our implementation use instances of WeakInvalidationListener, which means usually a binding does not need to be disposed.</div></div><div>```</div><div><br></div><div>I think this is incorrect and should be fixed.</div><div>In general, I believe the javadoc about Binding needs to be revisited. There are too many occurrences like "in general", "usually", "optional", which contributes to the idea that bindings are fuzzy logic. </div><div><br></div><div>- Johan</div></div>