|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Проект, который был изначально создан в VFP5, перекомпилировал в VFP9 SP2. (при этом, как известно, в проекте появляется файл setobjrf.prg) Клиент-сервер. Допилил мелочи типа Anchor у объектов форм, SET REPORTBEHAVIOR 90 и SYS(2700,0) Все работает, но программа очень быстро отъедает оперативную память компа. За час - 100 Мб, за 4-5 - уже может 1 Гб, за рабочий день вываливает много раз виндовое сообщение о том, что виртуальная память заканчивается и он увеличивает своп. В конце концов, если не закрыть программу - вываливает виндовую exception про память и помогает только перезагрузка компа. Но если закрыть фоксовый EXE, то память освобождается, и все Ок. Запускаю старый под 5-м фоксом exe-шник, - и память тоже потребляется, но на порядок меньше. Работает сутками без проблем. Начинаю копать. танцы с SYS(3050) и sys(1104) не помогают, сворачивание окон - тоже. (все фомы - In Screen) Смотрю и пишу в лог SYS(1016) - да, реально огромными скачками отжирается память. (например, загружу данные с сервера (немного - 500 строк без мемо), обновлю grid - и 400 Мб как не бывало!) Форум покопал, но пока безрезультатно. Я в тупике. Нельзя же заставлять юзеров перезапускать приложение каждые 2 часа?!! Есть идеи? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 17:23 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey TsПроект, который был изначально создан в VFP5, перекомпилировал в VFP9 SP2. (при этом, как известно, в проекте появляется файл setobjrf.prg) Есть идеи?Отказаться от использования классов из FFC и заменить их своими. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 17:30 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Sergey Sizov, а поподробнее - как? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 17:38 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey TsSergey Sizov, а поподробнее - как?Ручками. С помощью редакторов классов и текста. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 17:51 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
В качестве эксперимента, создать какую-либо одну из проблемных форм в VFP9 "с нуля", а не перекомпиляцией из VFP5. И посмотреть, будет ли также утекать память. Т.е. определится "кто виноват?". Какие-то "хвосты" от VFP5 или что-то еще. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 17:52 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Ts(например, загружу данные с сервера (немного - 500 строк без мемо), обновлю grid - и 400 Мб как не бывало!) покажите нам пример как Вы тянете данные и как обновляете ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2011, 18:05 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Ts, закрывайте открытые в памяти курсоры сразу, как только в них отпадает надобность. Или пишите запросы в таблицы на диск; за счет небольшого замедления работы приложения освободится память. Впрочем, все это надо проверять на практике. Наконец, чем VFP5 не угодил? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 09:32 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
прошелмимоAndrey Ts(например, загружу данные с сервера (немного - 500 строк без мемо), обновлю grid - и 400 Мб как не бывало!) покажите нам пример как Вы тянете данные и как обновляете Здесь классически - Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 09:45 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Sergey SizovAndrey TsSergey Sizov, а поподробнее - как?Ручками. С помощью редакторов классов и текста. И все же - можно хотя бы пример (или ткните ссылку). Пока сосем не представляю, с чего начать ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 09:46 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
igorbik, всегда так делаю. И большинство запросов сразу пишу на диск. 5-й фокс перестал устраивать отсутствием Anchor (ручной Resize объектов очень сложной формы иногда приводил к краху приложения), некоторые глюки в Combobox, + новые возможности в отчетах) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 09:52 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
igorbikИли пишите запросы в таблицы на диск жесть совет. 1. Andrey TsЗдесь классически - это не классически - это называется "заколебай себя и ближнего своего". перенести запрос в лоад формы. привязку прописать визуально в гриде при умирании формы убить курсор что будет? 2. альтернатива -бубнам: сюда посмотрите http://www.sql.ru/forum/actualthread.aspx?tid=828818 переделайте одну форму какую-нить на исп-е курсорадаптера. селекткмд положить запрос = в ф-и SQLEXEC убрать все бумны с инсертами апдейтами и делейтами (курсорадаптер все сделает сам). также убрать бубны с привязкой контролов к курсорам руками. посмотрите что будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 10:00 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Tsigorbik, всегда так делаю. И большинство запросов сразу пишу на диск. занафега? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 10:02 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
прошелмимо, Жаль, что вы так поверхностно подошли к вопросу. "переделайте", "занафега?" , "перенести запрос в лоад формы.","убрать все бумны с инсертами апдейтами и делейтами " Это проект, разрабатывающийся более 10 лет. Основная форма (в которой происходит 80% действий) очень сложна. Ваш совет хорош, но сейчас неприменим. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 10:46 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Tsпрошелмимо, Жаль, что вы так поверхностно подошли к вопросу. "переделайте", "занафега?" , "перенести запрос в лоад формы.","убрать все бумны с инсертами апдейтами и делейтами " Это проект, разрабатывающийся более 10 лет. Основная форма (в которой происходит 80% действий) очень сложна. Ваш совет хорош, но сейчас неприменим. а попытаться что-то изменить не? Вы считаете, что перевод с 5-ки на 9-ку заканчивается только перекомпил-й проекта? некоторые "безумные" приемы менять не стоит? и отказаться от них не стоит? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 10:56 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey TsЖаль, что вы так поверхностно подошли к вопросу. + вопрос на засыпку: Вы ждете волшебную кнопку, которую стоит нажать при компиляции Вашего чудо-писания? (я подумаю крыть ебуками или нет) пыс пыс гробил софт гостиничный в Орле - поделка как раз Питерская ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 11:09 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
прошелмимо, Повторюсь. Andrey Ts Ваш совет хорош, но сейчас неприменим. так как требует много времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 11:40 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Tsпрошелмимо, Повторюсь. Andrey TsВаш совет хорош, но сейчас неприменим. так как требует много времени. без труда не выловишь и рыПку из пруда (С). ну и до кучи вопрос: Вы по этой-же причине десятилетку сидели на 5-ке вместо того, чтобы 6 лет назад перейти на 9-ку? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 11:49 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
прошелмимо, нет. Другие задачи были. Нашел утечку памяти в таймере. (поэтому так быстро и съедало память) Пока уменьшил время обновления таймера, но буду копать еще в направлении замены FCC. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 12:23 |
|
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
|
|||
---|---|---|---|
#18+
Andrey Tsпрошелмимо, нет. Другие задачи были. Нашел утечку памяти в таймере. (поэтому так быстро и съедало память) Пока уменьшил время обновления таймера, но буду копать еще в направлении замены FCC. ууу, пАнятно. леХких путей Вы не ищите. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2011, 12:34 |
|
|
start [/forum/moderation_log.php?user_name=KindDog]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
190ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 294ms |
total: | 596ms |
0 / 0 |