Форум: "Основная";
Текущий архив: 2002.05.30;
Скачать: [xml.tar.bz2];
ВнизDelphi или C Найти похожие ветки
← →
Blacki (2002-05-20 17:30) [0]вот такой вопрос: у меня приложение скинуется, плюс много функций выполняется. Если смотреть за размером программы, то он всё вермя увеличивается(щас я уже вроде все битмапы удаляю на каждом шагу, так что она медленне увеличивается). Так вот через некоторое время работы программы, она выдаёт ошибку и выходит. Так вот у меня в связи с этим возникло несколько вопросов:
1. Как позволить моему приложению брать больше памяти(т.е. например delphi.exe занимает 27 мега).
2. Может из-за корявости vcl комопнентов я так мало видел серьёзных программ написанных на Delphi. И в связи с этим более серьёзный вопрос(для меня). Может перейти программировать на VC, потому что уж кажется там нет таких проблем. Или всё таки просто я где то не удалил переменные, а делфи нормально следит за памятью?
← →
Игорь Шевченко (2002-05-20 17:37) [1]Второе вернее - без разницы, на чем программировать, если программировать плохо.
В VCL корявости нет - есть кривые руки у использующих эти компоненты.
Серьезный программ на Delphi хватает :-)
← →
Виктор Щербаков (2002-05-20 17:38) [2]
> например delphi.exe занимает 27 мега
Господи, что там у тебя?
Неужто всё - код!
← →
NailS (2002-05-20 17:39) [3]Как показывает мой скромный опыт, вероятность падения программы из-за "корявости" vcl-комопнентов весьма мала.
>Как позволить моему приложению брать больше памяти
Приложение и так берет столько памяти, сколько ему нужно.
Скорее всего ты просто таки где то не удалил переменные, а делфи нормально следит за памятью, а от этого даже VC не спасет, ИМХО.
← →
Толик (2002-05-20 18:06) [4]То, что VCL корректно следит за выделением / удалением памяти - это факт. Корявость VCL - компонентов? Ну, не без багов, так кто же их не допускает? Исходя из моего опыта проблема скорее всего в беспорядочной обработке событий и отсутствии стиля написания кода.
← →
Anatoly Podgoretsky (2002-05-20 18:23) [5]На мой взгляд ты не там ищешь врага.
← →
Johnny Smith (2002-05-20 18:29) [6]2Blacki ©
Может перейти программировать на VC
Давай! Потом расскажешь, как оно... В MFCях корячиться и чистые API юзать.
← →
Anatoly Podgoretsky (2002-05-20 18:37) [7]Главное еще как насчет результата, будет ли по данной проблеме
← →
Johnny Smith (2002-05-20 18:45) [8]2Anatoly Podgoretsky © (20.05.02 18:37)
Главное еще как насчет результата, будет ли по данной проблеме
Вполне может быть. Лет эдак через...
← →
cypher (2002-05-20 19:46) [9]Начсет "так мало серьезных программ на Дельфи видел" - бред полный, программы не критичные к скорости и размеру в 90% случаях пишутся на Дельфи
← →
Blacki (2002-05-20 20:00) [10]ок народ убедили, остаюсь на Delphi :)
>чистые API юзать.
а ты их не юзаешь? а что не ужели можно без них обойтись? ну если только калькулятор писать :)
← →
Дремучий (2002-05-20 21:08) [11]2 Blacki ©
у меня в детстве , когда токо на делфийские ноги вставал, подобная трабла была...
создавал динамически модальные окна, а удалять(динамически) забывал...
причем с немодальными окнами работал нормально. Отак-то.
подобные проблемы лечатся методом Free либо проверкой на существование (например через Assigned) объекта перед его созданием и отменой повторного создания.
← →
Лёша (2002-05-20 21:13) [12]TWebBrowser в Делфи коряво работает. Как раз по теме - жрёт и жрёт. Попробуйте файл с картинками загрузить метров этак на 4 в совокупности с HTML.
Так они все в память загрузятся и очистятся только после завершения приложения. Даже динамическое убивание компонента не помогает.
А в VB проблем нет. Работает прекрасно без утечки. Так почему считается, что это веббраузера глюк а не Делфи?
ИМХО, ActiveX, как идеология, в Делфи глючно работает. Пичём не только юзанье, но и написание. Не из-за корявости левых ActiveX, а из-за возможностей Делфи. Конечно раз на раз не приходится.
Я это к тому, что не всему, что Делфи предлагает доверять можно.
← →
Anatoly Podgoretsky (2002-05-20 21:39) [13]У танцоров есть некоторые вредные предметы
← →
cyborg (2002-05-20 21:50) [14]Blacki ©
27 метров исполняемый файл :-), да это у тебя рекорд просто, не помню ни одной программы, что бы столько весила (кроме архивных ЕХЕ файлов). Скорее всего рисунков у тебя там налеплено, да ещё и в BMP. Викидывай всё из компонент, и подгружай из файлов во время выполнения программы.
Лёша ©
>TWebBrowser в Делфи коряво работает. Как раз по теме - жрёт и
>жрёт. Попробуйте файл с картинками загрузить метров этак на 4 в
>совокупности с HTML.
Возможно просто дисковый кэш заполняется этими картинками, вот и жрёт, это уже к Дельфи не относится.
Попробуй везде clear-ы делать.
← →
Лёша (2002-05-21 05:02) [15]2 Anatoly Podgoretsky © (20.05.02 21:39)
Вероятно, тема ветки настроила вас на шутовство. Согласен, под такой шапкой никогда не было ничего умного (я имею ввиду заголовком). Тем не менее, если вы имеете суждения о моей компетентности, и думаете, что они интересны, пожалуйста, высказывайтесь. Я всегда приветствую критику. Только впредь прошу вас воздерживаться от подобного тона.
При всём при том, я ни имел сказать ничего, кроме того, что сказал.
И использование ActiveX компонентов, даже таких заюзаных как TWebBrowser, может хранить сюрпризы. Это как вариант использования чего-то стандартного.
И почему с Indy не может происходить что-либо подобное. А уж тем более с левыми компонентами в т.ч. и с ActiveX.
2 cyborg © (20.05.02 21:50)
Вы наверное, как и предыдущий посланец подумали о том, что я из неумения освободить память в TWebBrowser сделал умозаключение о невозможности это сделать.
Я, может, непопулярно нарисовал проблему. Уверяю вас, дело не в кешах и не в клирах. Это баги признанные MS:
Q254637
Q259365
Q273942
Не знаю, как в IE6, но до IE5.5 они присутствуют.
← →
ETeRNaL (2002-05-21 05:09) [16]TWebBrowser в делфи ничего не жрет . Во всяком случае под XP .
А что касается VC, я на нем пишу проги . Но часто бывает так, что вылетает ошибка :) а уж я думаю все наслышаны про локализацию ошибок в VC . А на делфях все ОК: вылетела ошибка - посмотрел где - исправил .
← →
Кулюкин Олег (2002-05-21 08:19) [17]2 Лёша © (20.05.02 21:13)
> ИМХО, ActiveX, как идеология, в Делфи глючно работает
Сильно сказано :))
Хорошо что "ИМХО" в начале
2 Blacki © (20.05.02 17:30)
> Так вот через некоторое время работы программы, она выдаёт ошибку и выходит.
А какую ошибку?
Скорее всего, не убиваются динамически создаваемые объекты...
Впрочем, об этом уже сказали
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.30;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.005 c