Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Утечка памяти при наследовании!!! (число прочтений - 19170 )
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Утечка памяти при наследовании!!!
27. Июня 2006 :: 10:15
Печать  
Товарищи, мине плохо. Я щас прям помирать начну...

Имеем такую иерархию:
Код
Выбрать все
класс База = классТесты@MD
{
};

класс Потомок = классТесты@MD : База
{
};
 


модули классов пустые
Код
Выбрать все
//# ClassBegin База;
//# ClassEnd База;

//# ClassBegin Потомок;
//# ClassEnd Потомок;
 


Тестовая обработка
Код
Выбрать все
Процедура ТестСозданияОбъекта()
	Для н = 1 По 50000 Цикл
		Объект = СоздатьОбъект("Потомок");
		Объект = "";
	КонецЦикла;
КонецПроцедуры
 



После запуска обработки Working Set выростает с 23к до 190к.  И не освобождается.  Если создавать объекты класса "База" то память никуда не девается.
То что классы лежат в одном модуле роли не играет, это я уже для эксперимента создал совсем пустые классы. С нормальными классами, где внутренние данные есть,  эффект намного мощнее.

Может я чего не так делаю, а?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #1 - 27. Июня 2006 :: 10:21
Печать  
ADirks писал(а) 27. Июня 2006 :: 10:15:
Товарищи, мине плохо. Я щас прям помирать начну...

Никак нельзя, держись Улыбка

1. Была тема на itland года 3 назад, от Палыча, называлась "Пожиратель Памяти".
Суть в том, что разрушение объекта происходит не сразу, а через какое-то время.

2. Я присмотрюсь вечером еще раз, распределение памяти несложно проанализировать.
Вдруг правда потери.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #2 - 27. Июня 2006 :: 10:27
Печать  
ADirks писал(а) 27. Июня 2006 :: 10:15:
После запуска обработки Working Set выростает с 23к до 190к.  И не освобождается.  Если создавать объекты класса "База" то память никуда не девается.

Как и чем проверяешь количество памяти?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #3 - 27. Июня 2006 :: 10:30
Печать  
У меня такое чувство, что объекты вообще не удаляются из памяти. По крайней мере всё что принадлежит базовому классу. А у меня в каждой визуальной форме создаётся как минимум 1 объект. Но обычно от 3 до 5. Так что проблема для меня весьма неприятная.

Память смотрю Process Explorer'ом от SysInternals.  Но такое пожирательство и невооруженным глазом видно, оно на всей системе отражается.

10 минут подождал - память не освобождается.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #4 - 27. Июня 2006 :: 10:33
Печать  
Просьба - поставь в деструктор Предупреждение и посмотри, в какой момент оно появляется.
Типа сначала запусти указанный тобой код (только сначала не ставь 50000 Улыбка ), далее поработай/подожди 10 минут, после попробуй выйти из 1С.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #5 - 27. Июня 2006 :: 10:37
Печать  
А при повторном запуске обработки working set /private bytes снова увеличивается?
Если нет - может это очередной side-effect от CString/CFixedAlloc?
  

De quelle planète es-tu?
Наверх
 
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #6 - 27. Июня 2006 :: 10:46
Печать  
Создание и удаление одного объекта типа "Потомок" выглядит так:
Код
Выбрать все
База - конструктор
Потомок - конструктор
Потомок - деструктор
 


При закрытии 1С деструктор базы не вызывается (да и с чего?)

в деструкторе базы прописано
Код
Выбрать все
Процедура Деструктор()
	Предупреждение("База - деструктор");
КонецПроцедуры
 


так что пропустить его я никак не мог

Цитата:
А при повторном запуске обработки working set /private bytes снова увеличивается?
Если нет - может это очередной side-effect от CString/CFixedAlloc?
Увеличивается, причём в таких же примерно объёмах.  Мож конечно и связано это с CString, но почему проявляется только на иерархиях? Простой класс хоть обсоздавайся - память никуда не девается.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #7 - 27. Июня 2006 :: 10:53
Печать  
Цитата:
Увеличивается, причём в таких же примерно объёмах.  Мож конечно и связано это с CString, но почему проявляется только на иерархиях? Простой класс хоть обсоздавайся - память никуда не девается.

Тогда не похоже на CString, похоже на утечку. Посмотрю вечером.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #8 - 27. Июня 2006 :: 11:59
Печать  
А на обычных классах (т.е. не тех, которые в одном файле) такая же последовательность вызова конструкторов и деструкторов?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #9 - 27. Июня 2006 :: 12:02
Печать  
ADirks писал(а) 27. Июня 2006 :: 10:46:
Создание и удаление одного объекта типа "Потомок" выглядит так:
Код
Выбрать все
База - конструктор
Потомок - конструктор
Потомок - деструктор
 


При закрытии 1С деструктор базы не вызывается (да и с чего?)

А где у тебя деструктор базы вызывается ?
ЗЫ Если не было вызова деструктора в течение сеанса, то его вызов происходит при завершении работы 1С
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #10 - 27. Июня 2006 :: 12:15
Печать  
Если такое происходит, то только на последних сборках.

Так как у нас прогоняются тесты, в которых сотнями формируются объекты с глубокой иерархией. И каждый не хило память отжирает. Мы бы сразу заметили.

На сборке от 13.06.06 такого не обнаруживается.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #11 - 27. Июня 2006 :: 12:17
Печать  
Ага, мы уже с Алексеем это выяснили Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #12 - 27. Июня 2006 :: 12:18
Печать  
Как выяснилось, такая фигня появилась в ночной сборке от 27.06.  В сборке от 26.06 всё нормально.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #13 - 27. Июня 2006 :: 12:19
Печать  
ADirks писал(а) 27. Июня 2006 :: 10:15:
Может я чего не так делаю, а?


Смех Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #14 - 27. Июня 2006 :: 12:21
Печать  
Теперь осталось
1) найти крайнего/виноватого Печаль
2) добавить необходимые тесты в конфу тестирования 1С++ Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #15 - 27. Июня 2006 :: 12:26
Печать  
Я уже думал на тему тестов на утечку памяти - ничего не придумал.  Печаль

Зато можно писать тесты на вызов деструктора.  Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #16 - 27. Июня 2006 :: 12:27
Печать  
Ага, я и говорил именно о тестах по вызову деструкторов, в т.ч. и по порядку их вызова.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #17 - 27. Июня 2006 :: 13:51
Печать  
Для тестирования порядка вызова определенных процедур предлагаю выполнить следующее в конфе тестирования 1С++:

1) Создать спец. класс "КонтрольИсполнения", у которого два метода
- ДобавитьВызов(СигнатураТестаИлиЕгоНазвание, ТекстВызоваИлиНазваниеМетодаВызова );
- ПолучитьСписокВызова(СигнатураТестаИлиЕгоНазвание);


2) Поместить экземпляр этого класса в глобальник как глКонтрольИсполнения

3) В нужных местах юнит-тестов или в необходимых/используемых классах вставить соответствующий вызов
глКонтрольИсполнения.ДобавитьВызов(ИмяТеста, "Деструктор")
Для проверки правильности вызова использовать список, полученный вызовом глКонтрольИсполнения.ПолучитьСписокВызова(ИмяТеста)
И в конце теста анализировать этот список на предмет правильности.

Что скажете?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #18 - 27. Июня 2006 :: 19:23
Печать  
ADirks писал(а) 27. Июня 2006 :: 10:30:
У меня такое чувство, что объекты вообще не удаляются из памяти. По крайней мере всё что принадлежит базовому классу. А у меня в каждой визуальной форме создаётся как минимум 1 объект. Но обычно от 3 до 5. Так что проблема для меня весьма неприятная.

Память смотрю Process Explorer'ом от SysInternals.  Но такое пожирательство и невооруженным глазом видно, оно на всей системе отражается.

10 минут подождал - память не освобождается.

Подтверждаю, потеря памяти в чистом виде в CRT Heap на подсчете ссылок.
Отлично ловится, кстати, методом Система::Память(1).
« Последняя редакция: 27. Июня 2006 :: 20:54 - kms »  

De quelle planète es-tu?
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #19 - 28. Июня 2006 :: 03:53
Печать  
artbear
Ничего не понял. По-моему слишком сложно.

Проверка порядка вызова методов отлично описана в первоисточниках с примерами. Может быть не мудрить и сделать так же?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #20 - 28. Июня 2006 :: 04:22
Печать  
sedmin писал(а) 28. Июня 2006 :: 03:53:
Проверка порядка вызова методов отлично описана в первоисточниках с примерами. Может быть не мудрить и сделать так же?

В каких первоисточниках? И где примеры?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #21 - 28. Июня 2006 :: 04:58
Печать  
Кент Бек.
Экстремальное программирование. Разработка через тестирование.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #22 - 28. Июня 2006 :: 05:05
Печать  
Такой книги нету Печаль
Не отказался бы от электронного варианта Улыбка
И приведи, плиз, пример по работе с порядком вызова.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #23 - 28. Июня 2006 :: 05:32
Печать  
Нашел книгу в электронном виде
http://rapidshare.de/files/7262311/Extremalnoe_Programmirovaniye_-_Razrabotka_Ch...
Какой вариант/паттерн подходит для тестирования порядка вызова методов?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #24 - 28. Июня 2006 :: 07:16
Печать  
artbear писал(а) 28. Июня 2006 :: 05:32:
Какой вариант/паттерн подходит для тестирования порядка вызова методов?

Ты ее просто почитай. Там на целую главу расписаны первоначальные шаги создания системы юниттестирования.

Кстати, аналогичным образом реализован FuncTest\UnitTests\ТестТестовогоСлучая.txt::тест_ЗапускаМетода()
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #25 - 28. Июня 2006 :: 07:17
Печать  
Да, седмин мне это уже подсказал.
Сижу, читаю книгу.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Deb
1c++ developer
Отсутствует


Sex, drugs and 1C

Сообщений: 41
Зарегистрирован: 21. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #26 - 28. Июня 2006 :: 11:34
Печать  
Не понял, а ошибку исправили?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #27 - 28. Июня 2006 :: 11:47
Печать  
Конечно, нет, еще не успели.
Ты же вроде должен был видеть сообщение Михаила на тех.форуме об этом
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #28 - 28. Июня 2006 :: 22:50
Печать  
Deb писал(а) 28. Июня 2006 :: 11:34:
Не понял, а ошибку исправили?

Исправили.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #29 - 29. Июня 2006 :: 06:13
Печать  
Исправили, все работает.
Но пока нет юнит-тестов Печаль
Sedmin, может быть, ты напишешь тесты для проверки работы деструкторов "по умной методе Кента Бека", а ?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #30 - 29. Июня 2006 :: 06:27
Печать  
Может и напишу. Но обещать не стану.
  
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #31 - 03. Июля 2006 :: 14:25
Печать  
Написал тест вызова конструкторов/деструкторов.

Подтверждается невызов деструктора для предка для сборки от 20.06.2006 и 13.06.2006.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #32 - 04. Июля 2006 :: 06:24
Печать  
А на последних сборках тесты нормально отрабатывают?
ЗЫ у меня пока нет возможности проверить Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #33 - 04. Июля 2006 :: 12:56
Печать  
Тесты проходят за исключением, как и ранее, двух.

НО. Странно ведет себя тест ООПТесты::ТестПолучитьКонтекстОкружения_ИсключениеНаКопии. Тест выдает странное сообщение про деструкторы.

Авторы теста, посмотрите, пожалуйста.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #34 - 04. Июля 2006 :: 12:59
Печать  
Автор теста - я.
да, там есть непонятности на исключении, так и не смог решить.
Осталось написать "странное" сообщение Улыбка
Но почему-то такая непонятность происходит только при работе тестовой конфы и использовании юнит-тестов.
Если просто запустить данный код в 1С, будет обычне исключение, что и требуется.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Утечка памяти при наследовании!!!
Ответ #35 - 04. Июля 2006 :: 13:01
Печать  
А вообще метод "ПолучитьКонтекстОкружения" согласно общему решению разработчиков считается неподдерживаемым.
Ошибки с его участием не рассматриваются Улыбка
Так что тест я оставил только для истории фактически Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #36 - 04. Июля 2006 :: 13:12
Печать  
Тогда, наверное, его надо перевести в разряд проходящих путем комментирования тела теста с добавлением соответствующего комментария.

Паттерн "Чистый выпускаемый код".
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Утечка памяти при наследовании!!!
Ответ #37 - 04. Июля 2006 :: 13:35
Печать  
sedmin писал(а) 04. Июля 2006 :: 13:12:
Тогда, наверное, его надо перевести в разряд проходящих путем комментирования тела теста с добавлением соответствующего комментария.

Паттерн "Чистый выпускаемый код".

У Артура и у меня была идея сделать справочник ошибок с указанием статусов типа "wontfix", "invalid" с наложением фильтров на список тестов при запуске по статусу.

Еще была идея сохранения сеанса прогона тестов и последующего сравнения результата со следующим сеансом.
Нужно при внесении изменений в код компоненты.

Мне не хватает этих двух моментов.
Но времени не хватает еще больше. Печаль
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать