Как уже упомянуто ссылки хранения вокруг приведут к увеличению использования памяти со временем. Простой способ войти в эту ситуацию с событиями. Если у Вас был длинный живущий объект с некоторым событием, которое слушают Ваши другие объекты, если слушатели никогда не будут удаляться тогда, то событие на долговечном объекте поддержит те другие экземпляры еще долго после того, как они больше не будут необходимы.
Вы можете написать программу на C и проверить ESTALE
.
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <iso646.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
int main(){
struct stat st;
int ret;
ret = stat("/mnt/some_stale", &st);
if(ret == -1 and errno == ESTALE){
printf("/mnt/some_stale is stale\n");
return EXIT_SUCCESS;
} else {
return EXIT_FAILURE;
}
}