oMG*_*oMG 4 binding javafx weak-references
让我们说,我有两个StringProperty对象,我将绑定.我希望绑定很弱,即当其中一个对象引用变为null时,垃圾收集器可以将其从内存中删除.
防爆.
StringProperty obj1 = new StringProperty("Object1");
StringProperty obj2 = new StringProperty("Object2");
obj2.bind(obj1);
obj2 = null;
Run Code Online (Sandbox Code Playgroud)
虽然Binding哪个丢失了原始引用,但现在在绑定中引用.所以,我需要一个弱引用,所以我不必先使用unbind.
重要提示:我不想使用unbind.
我可以创建弱绑定吗?
虽然是晚了,但我在Property.bind(...)JavaDoc中发现了这个片段:
请注意,JavaFX具有通过弱侦听器实现的所有绑定调用.这意味着绑定属性可以被垃圾收集并停止更新.
因此,默认情况下,绑定应保持弱引用.