Переполнение памяти при редактировании окна
Clarion, Clarion 7
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Переполнение памяти при редактировании окна
Здравствуйте!
Вопрос такой. Есть довольно насыщенный экран с несколькими закладками. С некоторого момента при попытке включения нового объекта (например, чека) появляется сообщение Out of Memory (heap overflow) и Clarion аварийно закрывается. Можно ли что-то сделать с настройками например, чтобы расширить возможности по насыщению окна объектами. Есть для этого какие-то настройки Clariona или Windows? Разбивать экран на несколько не хотелось бы, да и неудобно. Спасибо.
Вопрос такой. Есть довольно насыщенный экран с несколькими закладками. С некоторого момента при попытке включения нового объекта (например, чека) появляется сообщение Out of Memory (heap overflow) и Clarion аварийно закрывается. Можно ли что-то сделать с настройками например, чтобы расширить возможности по насыщению окна объектами. Есть для этого какие-то настройки Clariona или Windows? Разбивать экран на несколько не хотелось бы, да и неудобно. Спасибо.
slav95211
- Дед Пахом
- Старичок
- Сообщения: 3300
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Re: Переполнение памяти при редактировании окна
Настроек таких вроде нет. Можно уменьшить объём памяти, укоротив USE-переменные, например было USE(?Button1), стало USE(?b1)
С уважением, ДП
Дед Пахом
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Re: Переполнение памяти при редактировании окна
Сообщение Алексей- Софт-Центр »
Добрый день!
Попробуйте в project properties
убрать full моду отладчика и поиграть стеком, по умолчанию там 32К.
Алексей
Попробуйте в project properties
убрать full моду отладчика и поиграть стеком, по умолчанию там 32К.
Алексей
Алексей- Софт-Центр
-
- ✯ Ветеран ✯
- Сообщения: 5174
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: Переполнение памяти при редактировании окна
Это либо Винда, либо версия Клаши кривая. Напишите конфигурацию стенда, плиз. И ещё попробуйте не в дизайнере, а в описании окна ручками ввести контрол. Что будет?
We are hard at work… for you. 

kreator
Re: Переполнение памяти при редактировании окна
Всем спасибо! Пока иду по пути сокращения имен меток. ПОсмотрю что будет. Результат отпишу.
slav95211
Re: Переполнение памяти при редактировании окна
Выхода два или 2 с половиной.
1. Перейти на C8 (там можно создавать экран более 32K)
2. Сократить по возможности имена меток (Дед писал уже)
2½. Какие-то из контролов создавать динамически при помощи CREATE, но не в структуре WINDOW.
1. Перейти на C8 (там можно создавать экран более 32K)
2. Сократить по возможности имена меток (Дед писал уже)
2½. Какие-то из контролов создавать динамически при помощи CREATE, но не в структуре WINDOW.
Shur
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
Re: Переполнение памяти при редактировании окна
Была такая же беда, но с отчетом. Выловил, что рушится при добавлении нового элемента.
Вывел все линии в отдельный блок (их особо было много) и переписал их добавление в отчет через CREATE.
Работает уже года 3 без проблем ...
Вывел все линии в отдельный блок (их особо было много) и переписал их добавление в отчет через CREATE.
Работает уже года 3 без проблем ...

Make Clarion Great Again ! 
Игорь Столяров
Re: Переполнение памяти при редактировании окна
Сократил имена всех меток. Всё получилось. Так что думаю запас еще будет, т.к. окно предназначено для задания параметров поиска и постоянно насыщается новыми параметрами. Всем еще раз спасибо!
slav95211
- Admin
- Администратор
- Сообщения: 4010
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 53 раза
- Поблагодарили: 33 раза
- Контактная информация:
Re: Переполнение памяти при редактировании окна
А можно показать исходник окна поиска... для интереса
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Admin
- Губин Игорь
- Шубуршун
- Сообщения: 2584
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 26 раз
Re: Переполнение памяти при редактировании окна
Была задача сделать окно "для задания параметров поиска". Около 200 позиций, к каждой позиции до десятка параметров.slav95211 писал(а):Сократил имена всех меток. Всё получилось. Так что думаю запас еще будет, т.к. окно предназначено для задания параметров поиска и постоянно насыщается новыми параметрами. Всем еще раз спасибо!
Решилось переводом позиций в LIST и маской для отображения в нужных местах нужных полей для ввода и сокрытия ненужных. Когда пользователь нажимает кнопочку "внести", то значения экранных полей переносятся в массив параметров для конкретной позиции.
Теперь нет никаких проблем с количеством позиций - могу наращивать сколько угодно, т.к. фактически на самом экране всего полсотни контролов.
Может и тут можно использовать аналогичный подход?
Это я только кажусь дураком! На самом деле я полный идиот!
Губин Игорь
Re: Переполнение памяти при редактировании окна
(Продолжая мысль Игоря) Вот уж что-что, а чеки как раз очень вписываются в один единственный контрол List. Убирайте их все к чёртовой бабушке. И закладки расчистятся, и юзер не будет глазами лихорадочно шастать по экрану в поисках нужной. И управлять (создавать/отображать) ими сможете на уровне БД, не трогая каждый раз интерфейс.slav95211 писал(а):Здравствуйте!
Вопрос такой. Есть довольно насыщенный экран с несколькими закладками. С некоторого момента при попытке включения нового объекта (например, чека) появляется сообщение Out of Memory (heap overflow) и Clarion аварийно закрывается. Можно ли что-то сделать с настройками например, чтобы расширить возможности по насыщению окна объектами. Есть для этого какие-то настройки Clariona или Windows? Разбивать экран на несколько не хотелось бы, да и неудобно. Спасибо.
...Помнится на прежней работе у меня так и было. Как раз когда экран перестал помещать все необходимые контролы, я, укоротив имена меток, из последних ресурсов создал лист-контрол. И все следующие чеки уже создавал в нем.
Shur
Re: Переполнение памяти при редактировании окна
(Пусть будет отдельной репликой, а то вдруг спорить из-за этого начнём!
). Вот ещё какая мысль пришла. Если у вас не хватает ресурсов под создание нового контрола в окне, надо сильно задуматься над эргономикой и дизайном окна, возможно проконсультироваться у дизайнера пользовательских интерфейсов. Скорее всего, что у вас что-то сделано не так.

Shur
- Дед Пахом
- Старичок
- Сообщения: 3300
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Re: Переполнение памяти при редактировании окна
Не факт. Допустим, на окне 300 Tab-ов, на каждом Tab-е с пяток контролов, только один Tab доступен. С точки зрения юзера и дизайнера всё зашибись.Shur писал(а):Если у вас не хватает ресурсов под создание нового контрола в окне, надо сильно задуматься над эргономикой и дизайном окна, возможно проконсультироваться у дизайнера пользовательских интерфейсов. Скорее всего, что у вас что-то сделано не так.
С уважением, ДП
Дед Пахом
- Губин Игорь
- Шубуршун
- Сообщения: 2584
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 26 раз
Re: Переполнение памяти при редактировании окна
Тогда НЕ ЗАШИБИСЬ с точки зрения программирования. Ясно же, что 300 табов это перебор.
Значит надо как-то оптимизировать это окно. Ведь даже 100 табов одновременно на экране не поместятся!
Я как-то проводил исследование (правда ещё на CW2) - простое присвоение {PROP:Text} в окне из 150 контролов занимало полторы секунды.
Значит надо как-то оптимизировать это окно. Ведь даже 100 табов одновременно на экране не поместятся!
Я как-то проводил исследование (правда ещё на CW2) - простое присвоение {PROP:Text} в окне из 150 контролов занимало полторы секунды.
Это я только кажусь дураком! На самом деле я полный идиот!
Губин Игорь
Re: Переполнение памяти при редактировании окна

Shur
Вернуться в «CLARION for Windows»
Перейти
- CW
- ↳ CLARION for Windows
- ↳ CLARION for Internet
- ↳ Clarion.NET
- Эксклюзив
- ↳ Приват
- CLARION и...
- ↳ Reports
- ↳ Железо
- ↳ Готовые программы, шаблоны, библиотеки...
- ↳ cJSON
- ↳ LibCurl
- ↳ MAV
- ↳ SQL, Oracle, ...
- ↳ Multi-программирование(Pascal/Delphi, и т.д.)
- ↳ WinDev
- DOS
- ↳ CLARION for DOS
- Разное
- ↳ Новости
- ↳ English
- ↳ Ресурсы
- ↳ Работа
- ↳ Обо всем ...
- ↳ Обсуждение этого Форума (типа, Гостевая книга)