Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Строки [D6, Win95/98, Win2k]


ZavDim ©   (2002-06-06 17:44:00) 

У меня такая штука:
Один код крутит одни и те же строки(большие до 1 Мб), я их постоянно меняю по содержанию, использую SetLength. Что происходит со старым содержимым? Дело в том, что растут расходы памяти и в 2000й ничего, а в 98 прога рушится. Может Дельфа их где-то откладывает?


ZavDim   (2002-06-10 06:42:00) [1]

Вся проблема была в GDI 98. строки работают ОК.
Кстати, помогла прога NailS. Спасибо.


ZavDim   (2002-06-07 12:35:00) [2]

Спасибо - попробую.
Штука еще такая - Смотрю диспетчер:
После запуска и работы программы памяти выделилось дополнительно 200 Мб, а процесс занимает 24 Мб. Куда идут другие 176?


NailS   (2002-06-07 10:10:00) [3]

Строка в чем то похожа на интерфейс, она содержит счетчик указателей на себя и когда он равен 0 освобождается.
см. UniqueString();

Утечки памяти искать спец.средствами, например http://www.automatedqa.com/downloads/memproof.asp.


ZavDim   (2002-06-07 06:53:00) [4]

1. SetLength - я думаю понятно зачем. Это не 255 string.
2. Это видимо да. А что делать?
3. M:=TMemoryStream.Create;
M.LoadFfomFile(NameFile);
SetLength(STEXT, M.Size);
M.ReadBuffer(STEXT[1], M.Size);
M.Free;

Пока так.


kull   (2002-06-06 18:24:00) [5]


> Fiend (06.06.02 18:02)

А как ты в string прочитаешь содержимое TMemoryStream?


McSimm   (2002-06-06 18:04:00) [6]

Увеличивается фрагментация памяти


Fiend   (2002-06-06 18:02:00) [7]

непойму, зачем тогда делаешь SetLength если юзаешь стринги???
Как ты с нимим оперируешь?
Может тебе лучше использовать PChar - отломи им памяти скока нуна, если что добавишь при необходимости!?


ZavDim   (2002-06-06 17:46:00) [8]

Причем именно String.


Наверх

Титульная страница Поиск, карта сайта Написать письмо