Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Флудильня :) (не знаешь где спросить? спрашивай здесь!)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92

Открыть новую тему     Написать ответ в эту тему

akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Флудильня :)
(не знаешь где спросить? спрашивай здесь!)

Флудильня-говорильня, Флеймоварня-отвечальня

 
Флейм, флуд, holy wars, а также о программировании вообще :)
Допускаются любые обсуждения и высказывания на тему программирования и около.
Просьба не переходить на личности и не обсуждать политику и тд...
 

Решаемые задачи:
. . . .
       
. . . .
 
 


 

первый пост топикстартера
...
во всех разделах форума есть, а чем мы хуже?
есть ведь откровенный флуд почти во всех топиках, так почему бы его не организовать...
сюда можно и holy wars перенести...
название темы естественно обсуждаемо, тут я ни на что не претендую...

в качестве затравки...
 
прочитал небольшую заметку о разработке советского/российского космического ПО...
и офигел...
 
оказывается почти всё ПО разработано и продолжает разрабатываться на
внимание!
на Модуле-2!
включая новую ГЛОНАСС...
о как!
 
--akaGM :)


Всего записей: 24055 | Зарегистр. 06-12-2002 | Отправлено: 15:08 05-11-2008 | Исправлено: akaGM, 02:23 18-09-2023
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arnaud

Цитата:
Нельзя ли по-конкретнее насчёт

Названия не скажу, так как уже давно в чемпах не участвую, но в свое время видел несколько (названий не помню). Но думаю гугль все помнит и знает.


----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 10:22 16-12-2010 | Исправлено: ShIvADeSt, 10:49 16-12-2010
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго всем времени суток!
Помогите  решить проблему с памятью. Прочитал и перепробовал кучу вариантов, ничего пока не помогло.
 
Есть оконное приложение. Когда запускается главное окно, программа занимает не более 12 Мб. Когда из него открыть другое окно, памяти уже 14Мб. Если его закрыть (даже ничего не делая), отдаётся обратно килобайт 200-300.
И так каждый раз - открытие забирает от одного и более (2, 3, 4 Мб), а отдаётся обратно при закрытии пару сот кб.
 
Датасеты в основном хранятся в датамодуле. Некоторые и на формах.
На закрытие формы закрываю ненужные датасеты и делаю Form.DoDestroy
Если в закрытии добавить как рекомендуют Action:=caFree, то после второго открытия-закрытия возникает ошибка нарушения доступа. Удаление датасетов, которые на форме, тоже вызывает такую же ошибку.
Но если пользователь за день пару окон закроет-откроет, программу приходится перезапускать.
 
Добавлено:
Забыл добавить. Делфи 2006, доступ к данным - Interbase. FastMM - молчит.

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 20:31 23-01-2011
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
caFree ИМХО юзать только когда делаешь Create каждый раз при показе. Ошибки судя по всему как раз поэтому и идут. Почитай про динамическое создание окон, то есть окно создается только тогда, когда его собираешься показать, когда не нужно - уничтожаешь его. Не обращай внимания на то сколько освободилось, вся память не освободится (хз почему), проверялось на чистом АПИ, аналогичная проблема - туда сюда килобайты гуляют. В случае с ВЦЛ спокойно может плюс минус метр.

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:58 24-01-2011
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShIvADeSt
Сделал так. На главной форме теперь Applacation.Create(...); Form.showModal;  Form.Free
 
Ошибки больше нет. Но и эффекта тоже.
Пробовал даже из события формы OnCreate, OnShow просто убрать открытия всех датасетов. Всё равно прибавляет в память 2-3 метра, а отдаёт 100кб.
 
 
Добавлено:
Беда в том, что если я на форме добавляю новую запись, или из неё еще форму открываю и т.д., то память уходит ещё быстрее ((
По логике всё, что на форме, включая датасеты, должно удалиться из памяти вместе с ней.

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 10:39 24-01-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
 
Попробуй метод FreeAndNil(Var Obj).

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 10:52 24-01-2011
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanaseduard
я бы сказал, что ничего не изменилось

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 12:27 24-01-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
Через часик попробую сделать посмотрю.
 
Создать форму, показать, поработать в ней и убить?
И посмотреть сколько ресурсов в дельте получилось?

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 12:33 24-01-2011
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
придумал вот что.
для тех форм, которые часто нужны. перед созданием проверяю, не создана ли уже форма. если создана, то просто открываю.
на закрытие не уничтожаю.
тогда один раз память отжирается, но при последующем запуске память остаётся на том же уровне (не прибавляется каждый раз).
посмотрим, как будет на практике
 
Добавлено:
tanaseduard
да. форма открывает там разные наборы данных и т.д. (довольно много всего на ней)

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 12:34 24-01-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
 
Очень грамотное решение.
Например у нас в проекте более 2000 форм(почти все в dll и dpl).
На старте загружается только лоадер. Далее при запросе на форму проверяем или она уже создана, если нет создаем. После выхода дестроим ну или если не требуется то оставляем жить, так же при старте проверяем или имеет право эта форма находиться в памяти если нет, то мы ее дестроим и пересоздаем.
На практике работает очень хорошо.  
 
Добавлено:
brookson
 Итак, итоги теста.
   
 
Выводы делайте сами.
 
Как итог сторонние компоненты в особенности GUI оставляют мусор в памяти.  
В данном примере использовался DevExpress QuantumGrid v 6.54.
 
 
Добавлено:
tanaseduard
 
Создавал так:

Код:
Form2:=TFrom2.Create(Form1)  

 
Освобождал

Код:
FreeAndNil(Form2)

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 12:40 24-01-2011
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanaseduard
Да, у меня получилось так же. Вполне приемлемо.
Один вопрос:
Цитата:
так же при старте проверяем или имеет право эта форма находиться в памяти если нет

Это как? или это просто о реализации прав доступа пользователей?

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 14:23 24-01-2011 | Исправлено: brookson, 14:23 24-01-2011
tanaseduard



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
 
Это о реализации прав доступа и загрузки динамических модулей в проект(как они грузятся и на что имеют права).

Всего записей: 518 | Зарегистр. 21-11-2009 | Отправлено: 14:31 24-01-2011
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
IntelliJ Idea - красивая обла для джавы. От вижуал студии отличается интерфейсом и может некоторой нудностью к путям. Но работает достаточно круто если смотреть в сторону Джавы. В общем мне понравилась но фанатом не стал - не люблю писать вирусы.
 
 
Добавлено:
Ой читал первую страницу...

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 15:53 24-01-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Ой читал первую страницу...

и что?

Всего записей: 24055 | Зарегистр. 06-12-2002 | Отправлено: 16:37 24-01-2011
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
и что?

А там как раз это обсуждалось, правда года два назад

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:10 26-01-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShIvADeSt
точно, я же сам и спрашивал
склероз, однако...

Всего записей: 24055 | Зарегистр. 06-12-2002 | Отправлено: 02:31 26-01-2011
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По поводу первого программиста, забаненная (вполне справедливо) тема в общем топике. Которую именно сюда некоторые граждане (тоже вполне справедливо) хотели перенаправить. Типа, ответ на гневные замечания от Qraizer. Я, в реальности, не искажал никакие фамилии. Lovelace - это обычная аглицкая фамилия. Более чем реальная. Вроде как у нас Онегин, Печерин или матрос Швандя. Сейчас ее принято произносить в соответствии с аглицким прононсом, Лавлейс. Но некогда она, попав в литературу, на Руси произносилась часто как "Ловелас". А иногда - несколько иначе. Саня Пушкин будет мне в свидетели:  

Цитата:
Она любила Ричардсона  
Не потому, чтобы прочла,  
Не потому, чтоб Грандисона  
Она Ловласу предпочла

- Женя Онегин.
Ну, транскрипция иноземных фамилий - дело темное. Куда более темное, чем программирование. Варианты вполне реальны.
 
ЗЫ: Ну, к тому же. Деревянные аналоги "Феликсов" начала 20-го века в веке 19 абсолютно немыслимы и практически не реализуемы из-за малой прочности дерева. Бред полнейший, с практической точки зрения. Бронза или латунь еще спасут отца русской программной демократии... Хотя ему это уже не по карману будет, явно, в 19 веке...

Всего записей: 2485 | Зарегистр. 21-06-2005 | Отправлено: 11:33 26-01-2011 | Исправлено: XPEHOMETP, 12:17 26-01-2011
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Lovelace - это обычная аглицкая фамилия. Более чем реальная. ... Сейчас ее принято произносить в соответствии с аглицким прононсом, Лавлейс. Но некогда она, попав в литературу, на Руси произносилась часто как "Ловелас".  
Только произносится иначе, ... потому что в Русь она вошла с французского.
Если у тебя такой юмор был, мягко говоря... сорри, не получается мягко. Попробуй-ка на бумаге "всего лишь" написать вычисление чисел Бернулли в машкодах для хотя бы Ай-Би-Эм... тьфу ты, x86, у которого набор инструкций... гм... мягко говоря, несравним даже с ЭНИАКом, не то что с разностной машиной Бэббиджа. Предположим, что у неё тоже был некий поцессор с неким набором инструкций, угу.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 07:35 28-01-2011
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XPEHOMETP
Qraizer
Вы не дооценили тему вообще и я расстроен. Вполне понятно что Вождь Компартии не первый программист а первый русский программист. Его нельзя хоронить потому что это УФО (НЛО) вселенского масштаба которое всё же ездило во Францию. Батюшка Церковный меня успокоил - его земля не примет. И не надо! К сожалению Ловеласом он не был, а я люблю девочек. Мне вообще не понятно зачем им голова - вроде есть, а вроде нет. Непонятные существа девочки - вообще загадочные. Вот и чтобы доказать превосходство существования головы нужен Вождь Всех Народов. Иначе девки не поверят.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 07:40 01-02-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
"ну, вы, блин, даёте"...

Всего записей: 24055 | Зарегистр. 06-12-2002 | Отправлено: 08:04 01-02-2011
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Вполне понятно что Вождь Компартии не первый программист а первый русский программист.

He! Первый русский программист - это великий князь Иван III Васильевич. Ибо ставил перед собой как реальную практически невыполнимую задачу: отбить Константинополь у турок. И эта поганая программа действий так и висела над Российской Империей (люди добрые, мы - люди нездешние, отдайте нам Константинополь и проливы!), пока она доблестно не загнулась. А большевики как раз от этой невыполнимой программы отказались, выдвинули свою, не менее невыполнимую. Ну, программисты, что с них взять!
 
Qraizer
Да, пардон, не просек, что тогда языков более-менее высокого уровня (ну, тут каждый понимает по-своему, плюсовики тут фигни наговорили) не было, тем более что работы мадам Лавлейс не читал. Да и вряд ли она сейчас доступна. Так что - да, машинные коды. А это не сахар. Сейчас так никто не программирует, но, будучи студентом, видел великовозрастных тетенек (почему-то был отбор по половому признаку?) с курсов повышения квалификации, которые писали свои программы в машинных кодах для ЕС ЭВМ, через нолики и единички. Я на них смотрел как на ненормальных. Кому же надо такой фигней заниматься?
 
И еще раз  - на счет фамилии. Как бы она в русский язык (скорее, в русскую культуру) не попала, это не важно, наверняка разными путями, но если бы Вы на меня за "Ловелас" не взъелись, я был бы не прав. А так, я понимаю, что Лавлейс и Ловелас - это одна и та же фамилия, и Вы это прекрасно понимаете. И показали это своей реакцией.

Всего записей: 2485 | Зарегистр. 21-06-2005 | Отправлено: 09:56 01-02-2011 | Исправлено: XPEHOMETP, 10:01 01-02-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Флудильня :) (не знаешь где спросить? спрашивай здесь!)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru