Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Вниз

Нехватка памяти в BDE   Найти похожие ветки 

 
Извращенец2   (2002-09-11 15:24) [0]

Здравствуйте! Столкнулся с такой проблемой: похоже BDE жрет память и самостоятельно ее не освобождает. Во время разработки проекта открываю наборы данных (tDatabase.Active=true) и через некоторе время(2-3 часа) при попытке работы с данными выходит ошибка "Unsufficient memory for this operation". Догадался, что запас памяти, выделенный для BDE кончается. Как решить эту проблему, кроме как постоянно следить за закрытостью наборов данных при разработке?
Заранее спасибо:)


 
REA   (2002-09-11 16:40) [1]

Скорее всего память жрет кто-то другой, а ему просто нехватает.
А какого рода операции с базой?


 
ppcat   (2002-09-11 18:16) [2]

Попробуй так: сначала Project -> Build, затем Run.


 
MsGuns   (2002-09-11 18:29) [3]

>tDatabase.Active=true во время разработки.
Ни в коем случае !
Только на фазу проектирования визуальных компонент (гридов, например). Затем сразу закрывать и коннектить программно, например, по FormShow. Избавит от огромного множества проблем, особенно если юзаешь Paradox или dBase (зависания, сообщения типа Table in use.. и т.д.)


 
KDS   (2002-09-11 18:34) [4]

>MsGuns
Ты прав!
И при выходе из программы всегда закрывать соединение
Session.Close;


 
MsGuns   (2002-09-11 18:42) [5]

>KDS © (11.09.02 18:34)
>И при выходе из программы всегда закрывать соединение
Session.Close;

Вообще-то при выходе из программы работает деструктор. Он в числе прочего выполняет приведенную Вами строку, закрывая сессию.
Хуже, если прога не завершилась нормально, тогда сессия остается открытой и конкурирует с "висящей" в ОП Делфой. Повторный запуск исправленного проекта в таких случаях и приводит к нехорошим экскпшинам. В таких случаях надо или опускать Делфу или менять у нее WorkDirecory


 
KDS   (2002-09-11 19:01) [6]

>или менять у нее WorkDirecory
да просто постирать файлы с расширением LCK


 
MsGuns   (2002-09-11 19:12) [7]

>KDS © (11.09.02 19:01)
>или менять у нее WorkDirecory
да просто постирать файлы с расширением LCK

Вот после этого точно придется Reset давить.



 
Извращенец2   (2002-09-12 05:58) [8]

База у меня IB 5.6. Я точно уверен, что это BDE жрет память.
А что за файлы *.lck? Некоторые люди советовали увеличить объем выделяемой памяти через какое-то св-во алиаса...Не скажете как?
Я конечно постараюсь закрывать соединения, но как бы я там ни старался, эта ошибка выходит вновь.


 
Alexandr   (2002-09-12 06:34) [9]

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


 
Виталий Панасенко   (2002-09-12 09:08) [10]

BDEAdmin->Configuration->Init-SharedMemSize сделай по-больше, чем 2048



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
3-7865
DmitryMN
2002-09-13 13:21
2002.10.03
Поля с автоинкрементом в InterBase


3-7804
Извращенец2
2002-09-11 15:24
2002.10.03
Нехватка памяти в BDE


14-8149
Bboy
2002-09-09 12:09
2002.10.03
А есть ли в XP папка, равная папке SendTo в Win9X???


1-7944
tararasyk
2002-09-24 01:14
2002.10.03
Проблеми при перехвати нажатия кнопки минимизация


1-7895
alxx
2002-09-20 18:28
2002.10.03
Checkbox ы в TListView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский