创建像:
这样的监听器时InvalidationListener progressListener = new InvalidationListener() {
public void invalidated(Observable o) {
updateValues();
}
};
然后将监听器多次添加到同一个实例/属性中,如:
model.getMediaPlayer().currentTimeProperty().addListener(progressListener);
由于model.getMediaPlayer()
更改并且可以引用与之前引用的相同的一个。在这种情况下,添加相同的侦听器progressListener
会导致内存泄漏等问题吗?
答案 0 :(得分:0)
如果您创建一次侦听器然后多次添加它,则使用的内存量很小。但是,微小的分配很多次,可以加起来。监听器是潜在的泄漏源,但通常每次都会创建新实例。鉴于你所描述的内容,我怀疑你的泄漏源。