Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Sergey Matveychuk                    2:5020/52      05 May 2003  19:53:52
 To : All
 Subject : Удаление элемента хеша
 -------------------------------------------------------------------------------- 
 
 У меня есть хеш со ссылками на другой хеш, в котором так же могут быть
 ссылки на хеш. Типа такого: $hash{par1}{par2}{par3}. Я хочу удалить
 сразу всю ветку: delete $hash{par1}. 
 Вроде все правильно, всю память должен освободить сборщик мусора? 
 
 Hо вот в какой то ситуации ссылка в $hash{par1} остается.
 Скажем такой код:
 foreach my $k (keys %hash) {
   print "$k -> $hash{$k}{aaa}\n";
 }
 
 После delete может выдать предупреждение про неопределенное значение. 
 
 Причем на таких вот маленьких примерах все работает нормально. Hе
 работает на большом сервере (несколько тысяч строк кода) после
 нескольких дней работы начинается такое. Почему то остаются удаленные
 элементы-ссылки хеша. Может я чего не знаю?
 --- Forte Agent 1.7/32.534
  * Origin: CIAM (2:5020/52.0)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Удаление элемента хеша   Sergey Matveychuk   05 May 2003 19:53:52 
Архивное /ru.perl/834316ae31b6c.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional