powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
19 сообщений из 19, страница 1 из 1
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117769
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проект, который был изначально создан в 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 часа?!!
Есть идеи?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117791
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey TsПроект, который был изначально создан в VFP5, перекомпилировал в VFP9 SP2.
(при этом, как известно, в проекте появляется файл setobjrf.prg)
Есть идеи?Отказаться от использования классов из FFC и заменить их своими.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117819
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

а поподробнее - как?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117855
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey TsSergey Sizov,

а поподробнее - как?Ручками. С помощью редакторов классов и текста.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117856
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В качестве эксперимента, создать какую-либо одну из проблемных форм в VFP9 "с нуля", а не перекомпиляцией из VFP5. И посмотреть, будет ли также утекать память. Т.е. определится "кто виноват?". Какие-то "хвосты" от VFP5 или что-то еще.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37117892
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Ts(например, загружу данные с сервера (немного - 500 строк без мемо), обновлю grid - и 400 Мб как не бывало!)


покажите нам пример как Вы тянете данные
и как обновляете
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118773
igorbik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Ts, закрывайте открытые в памяти курсоры сразу, как только в них отпадает надобность. Или пишите запросы в таблицы на диск; за счет небольшого замедления работы приложения освободится память. Впрочем, все это надо проверять на практике. Наконец, чем VFP5 не угодил?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118799
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимоAndrey Ts(например, загружу данные с сервера (немного - 500 строк без мемо), обновлю grid - и 400 Мб как не бывало!)


покажите нам пример как Вы тянете данные
и как обновляете
Здесь классически -
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Grid.Column.ControlSource=[]
...
Grid.RecordSource=[]
USE IN tbl
SQLEXEC(nConn,[SELECT ....],[tbl])
Grid.RecordSource=[tbl]
Grid.Column.ControlSource=[tbl.Field1]
...
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118804
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey SizovAndrey TsSergey Sizov,

а поподробнее - как?Ручками. С помощью редакторов классов и текста.
И все же - можно хотя бы пример (или ткните ссылку). Пока сосем не представляю, с чего начать
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118820
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igorbik,

всегда так делаю. И большинство запросов сразу пишу на диск.

5-й фокс перестал устраивать отсутствием Anchor (ручной Resize объектов очень сложной формы иногда приводил к краху приложения), некоторые глюки в Combobox, + новые возможности в отчетах)
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118842
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igorbikИли пишите запросы в таблицы на диск

жесть совет.

1.
Andrey TsЗдесь классически -


это не классически - это называется "заколебай себя и ближнего своего".
перенести запрос в лоад формы.
привязку прописать визуально в гриде

при умирании формы убить курсор

что будет?


2. альтернатива -бубнам: сюда посмотрите
http://www.sql.ru/forum/actualthread.aspx?tid=828818

переделайте одну форму какую-нить
на исп-е курсорадаптера.

селекткмд положить запрос = в ф-и SQLEXEC
убрать все бумны с инсертами апдейтами и делейтами (курсорадаптер все сделает сам).
также убрать бубны с привязкой контролов к курсорам руками.

посмотрите что будет.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118847
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Tsigorbik,

всегда так делаю. И большинство запросов сразу пишу на диск.



занафега?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37118985
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо,

Жаль, что вы так поверхностно подошли к вопросу.
"переделайте", "занафега?" , "перенести запрос в лоад формы.","убрать все бумны с инсертами апдейтами и делейтами "

Это проект, разрабатывающийся более 10 лет. Основная форма (в которой происходит 80% действий) очень сложна.

Ваш совет хорош, но сейчас неприменим.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119029
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Tsпрошелмимо,

Жаль, что вы так поверхностно подошли к вопросу.
"переделайте", "занафега?" , "перенести запрос в лоад формы.","убрать все бумны с инсертами апдейтами и делейтами "

Это проект, разрабатывающийся более 10 лет. Основная форма (в которой происходит 80% действий) очень сложна.

Ваш совет хорош, но сейчас неприменим.

а попытаться что-то изменить не?

Вы считаете, что перевод с 5-ки на 9-ку заканчивается только перекомпил-й проекта?
некоторые "безумные" приемы менять не стоит? и отказаться от них не стоит?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119072
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey TsЖаль, что вы так поверхностно подошли к вопросу.


+ вопрос на засыпку:
Вы ждете волшебную кнопку,
которую стоит нажать при компиляции
Вашего чудо-писания?

(я подумаю крыть ебуками или нет)

пыс пыс
гробил софт гостиничный в Орле - поделка как раз Питерская
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119188
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо,

Повторюсь.
Andrey Ts
Ваш совет хорош, но сейчас неприменим.
так как требует много времени.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119227
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Tsпрошелмимо,

Повторюсь.
Andrey TsВаш совет хорош, но сейчас неприменим.
так как требует много времени.

без труда не выловишь и рыПку из пруда (С).

ну и до кучи вопрос:
Вы по этой-же причине десятилетку сидели на 5-ке вместо того, чтобы
6 лет назад перейти на 9-ку?
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119376
Andrey Ts
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо,

нет. Другие задачи были.

Нашел утечку памяти в таймере. (поэтому так быстро и съедало память)
Пока уменьшил время обновления таймера, но буду копать еще в направлении замены FCC.
...
Рейтинг: 0 / 0
Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
    #37119438
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Tsпрошелмимо,

нет. Другие задачи были.

Нашел утечку памяти в таймере. (поэтому так быстро и съедало память)
Пока уменьшил время обновления таймера, но буду копать еще в направлении замены FCC.

ууу, пАнятно.
леХких путей Вы не ищите.
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проблемы с памятью в EXE (VFP5 перекомпилирован под VFP9 SP2)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]