Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.13;
Скачать: CL | DM;

Вниз

посоветуйте   Найти похожие ветки 

 
snake1977   (2004-02-04 13:28) [0]

Посоветуйте, как будет правильнее сделать. Каждые 5 минут вызывается процедура

List:=TStringList.Create;
Dir:="c:\windows";
ForceDirectories(Dir);
ScanDir(Dir,"*.tmp",List);
if List.Count>0 Then
Begin
for i:=0 to List.Count-1 do
DeleteFile(List[i]);
End;
List.Free;

На счет переменной List, ее сделать глобальной а перед вызовом процедуры делать List.Clear; или оставить ее локальной в процедуре и создавать каждый раз??


 
Тимохов ©   (2004-02-04 13:29) [1]

второе

> if List.Count>0 Then

это - на фиг.


 
snake1977   (2004-02-04 13:32) [2]

>>Тимохов

второе - это оставить ее локальной и делать каждые пять минут ей List:=TStringList.Create; и List.Free; ???


 
alex_*** ©   (2004-02-04 13:33) [3]

Создавать в локале - путаницы меньше будет. Тем более что сканировать папку это довольно долго.


 
Тимохов ©   (2004-02-04 13:35) [4]


> snake1977 (04.02.04 13:32) [2]

Ну да.
Это "if List.Count>0 Then" все-таки убери - лишнее.


 
snake1977   (2004-02-04 13:37) [5]

не хочеться каждый раз выделять и освобождать память :(
этож приведет к ее фрагментации, ведь реально, переменная типа TStringList есть не что иное как указатель


 
Тимохов ©   (2004-02-04 13:41) [6]


> snake1977 (04.02.04 13:37) [5]

Не занимася ерундой - менеджер памяти не так глуп, как кажется.
Делай дело...

Ну и вообще, что думаешь для переменной dir используются какие-то другие механизмы? Она у тебя локальная - для нее каждый раз выделяется память (тем же менеджером памяти), но тебя это как-то не напрягает :)))


 
snake1977   (2004-02-04 13:43) [7]

уломали :)
спасибо за советы


 
Тимохов ©   (2004-02-04 13:43) [8]

Для реал мастеров по поводу 6.
Знаю, что не совсем так, как я написал, но для выражения мысли, вполне достаточно, имхо.



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

Текущий архив: 2004.02.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.036 c
1-38779
AlexeyITN
2004-02-03 16:04
2004.02.13
ProgressBar1 и TThread


3-38717
DelphiNew
2004-01-22 10:53
2004.02.13
Индексы


4-39125
vladelo
2003-12-10 19:13
2004.02.13
Hook на подключение к Internet


3-38748
yaric
2004-01-21 13:14
2004.02.13
Защита БД в Interbase(роль SYSDBA)


1-38948
Kinderrr
2004-02-04 00:34
2004.02.13
Интервал времени