Size: a a a

2020 September 24

DS

Dmitriy Shilnikov in learn.java
Кирилл
Не понял ответа. Значит попробую запустить приложение и обождать пару часов, чтоб точно мусор вычистился. Просто суть в том, что объект удален, но при изменении observableList он реагирует на изменение и в консоль мне свой индекс -1 выводит.
Ну ты можешь вызвать System.gc, но это вряд ли что-то изменит. Раз у тебя в консоль сообщения выводятся, значит на объекты ссылки есть откуда-то
источник

К

Кирилл in learn.java
Просто объект еще живой, после его удаления. На него ссылок нет, а вот держит ли на него ссылку listener в observableList, я не знаю
источник

ch

central hardware in learn.java
Кирилл
Просто объект еще живой, после его удаления. На него ссылок нет, а вот держит ли на него ссылку listener в observableList, я не знаю
удаления откуда?  если из листа вы его никоим образом не удаляли
источник

ch

central hardware in learn.java
удалением вообще только GC занимется, вы же удаляете ссылки на него
источник

К

Кирилл in learn.java
central hardware
удаления откуда?  если из листа вы его никоим образом не удаляли
Я его удалил из VBox через getChildren().remove. Из листенера его как тогда убрать?
источник

К

Кирилл in learn.java
central hardware
удалением вообще только GC занимется, вы же удаляете ссылки на него
Да это понятно, просто я не знаю, подлежит ли он удалению в будущем, если он из кучи вещает, без очевидных ссылок на него
источник

DS

Dmitriy Shilnikov in learn.java
Кирилл
Да это понятно, просто я не знаю, подлежит ли он удалению в будущем, если он из кучи вещает, без очевидных ссылок на него
Без ссылок вещать невозможно. Кто-то в нём должен что-то вызывать, чтобы он вещал )
источник

ch

central hardware in learn.java
Кирилл
Да это понятно, просто я не знаю, подлежит ли он удалению в будущем, если он из кучи вещает, без очевидных ссылок на него
вас как программиста вообще не должно волновать что там делает GC он ну никоим образом не влияет на то как работает ваш код
источник

К

Кирилл in learn.java
Dmitriy Shilnikov
Без ссылок вещать невозможно. Кто-то в нём должен что-то вызывать, чтобы он вещал )
В нем определен слушатель, на ObserveList, в котором он лежит, этот слушатель и вещает про изменения
источник

DS

Dmitriy Shilnikov in learn.java
central hardware
вас как программиста вообще не должно волновать что там делает GC он ну никоим образом не влияет на то как работает ваш код
Вообще это не так и утечки памяти в джаве всё равно могут быть
источник

ch

central hardware in learn.java
Dmitriy Shilnikov
Вообще это не так и утечки памяти в джаве всё равно могут быть
утечки с точки зрения GC вполне коректное поведение, ИМХО
источник

DS

Dmitriy Shilnikov in learn.java
central hardware
утечки с точки зрения GC вполне коректное поведение, ИМХО
Нет, утечки - это всегда некорректное поведение.
источник

К

Кирилл in learn.java
central hardware
вас как программиста вообще не должно волновать что там делает GC он ну никоим образом не влияет на то как работает ваш код
Так работа сборщика меня и не интересует, я знаю как он работает и что мои объекты он снесет, когда сочтет нужным. Но если объекты вещают из кучи, без ссылок на них, это потенциальная утечка памяти
источник

DS

Dmitriy Shilnikov in learn.java
И человек вполне правильно интересуется, как ему освободить объекты правильно
источник

ch

central hardware in learn.java
Dmitriy Shilnikov
Нет, утечки - это всегда некорректное поведение.
программист держит ссылку на обьект, GC не может его удалить, где тут некоректное поведение, вот если он начнет его удалять это уже точно нифига не коректно
источник

DS

Dmitriy Shilnikov in learn.java
central hardware
программист держит ссылку на обьект, GC не может его удалить, где тут некоректное поведение, вот если он начнет его удалять это уже точно нифига не коректно
ну так вопрос-то у человека чего делать с объектом, чтобы ссылок не было и gc удалил )
источник

К

Кирилл in learn.java
central hardware
программист держит ссылку на обьект, GC не может его удалить, где тут некоректное поведение, вот если он начнет его удалять это уже точно нифига не коректно
Так где я ее держу, я как раз это и не могу понять. Я держу ссылку слушателем?
источник

К

Кирилл in learn.java
Просто точно знаю, когда ничего на объект не ссылается, он подлежит удалению. Но объект сам ссылается, слушателем, либо слушатель на него, где эта ссылка?
источник

К

Кирилл in learn.java
Хотя то, что он сам ссылается, это не важно. Сейчас вспомнил. Видимо, слушатель держит ссылку на объект, я верно понимаю?
источник

ch

central hardware in learn.java
источник