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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
1-38801
Agent13
2004-02-02 16:57
2004.02.13
Пара вопросов по RichEdit


14-39092
Shaman
2004-01-23 17:25
2004.02.13
8Mb кэша на винте сильно чувствуются?


1-38865
Фдуч
2004-02-01 13:51
2004.02.13
как узнать номер текущего mdichild


7-39108
Cosinus
2003-11-26 18:42
2004.02.13
Защита от монитора портов


1-38877
Maxim Vetera
2004-02-03 10:15
2004.02.13
Экраная лупа





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский