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

Вниз

RenameFile и/или Rename очень долго выполняются!   Найти похожие ветки 

 
wp2 ©   (2007-07-31 00:09) [0]

У меня есть программа, которая переименовывает группу файлов.
И оказалось, что подпрограмма RenameFile и/или Rename выполняются от 0,5 до 1 секунды!!!

Как это понять?

ЗЫ. Того не надо тут, компьютер медленный и прочей чепухи.


 
Belorus ©   (2007-07-31 03:02) [1]

Удалено модератором


 
alien1769 ©   (2007-07-31 09:59) [2]

Если это 98 винда и много файлов - тогда может быть !
(FAT - тормозная штука)


 
wp2 ©   (2007-07-31 13:53) [3]

NTFS
SATA

WindowsXP SP2

Pentium IV 3.0

Я бы попросил, чтобы кто-то сам попробовал у себя на компе.


 
jack128_   (2007-07-31 14:00) [4]

Ну на такой же системе, только винт на PATA, тотал где то за секунду сотню файлов переименовал..


 
wp2 ©   (2007-07-31 14:31) [5]

Да тотал-то тотал, а вот бы процедуру RenameFile() проверить...


 
jack128_   (2007-07-31 14:32) [6]


> а вот бы процедуру RenameFile() проверить...

А ты думаешь тотал как то по другому файлы переименовывает?


 
clickmaker ©   (2007-07-31 14:41) [7]

function RenameFile(const OldName, NewName: string): Boolean;
begin
{$IFDEF MSWINDOWS}
 Result := MoveFile(PChar(OldName), PChar(NewName));
{$ENDIF}

если дергать непосредственно MoveFile, можно сэкономить несколько десятков милисек на вызове :)


 
wp2 ©   (2007-07-31 17:24) [8]

Исходник этот я видел, вроде ж всё логично.

Надо подумать, может есть другой способ для переименования.


 
alex_*** ©   (2007-07-31 18:20) [9]

использовать пул потоков и переименовывать асинхронно....


 
Belorus ©   (2007-08-02 22:47) [10]

> [7] clickmaker ©   (31.07.07 14:41)
> function RenameFile(const OldName, NewName: string): Boolean;
>
> begin
> {$IFDEF MSWINDOWS}
> Result := MoveFile(PChar(OldName), PChar(NewName));
> {$ENDIF}
>
> если дергать непосредственно MoveFile, можно сэкономить
> несколько десятков милисек на вызове :)


Ты хочешь сказать что ты умнее компилятора ?
ДУмаешь он такую оптимизацию сам не проведёт ?


 
Dib@zol ©   (2007-08-02 22:51) [11]

> Ты хочешь сказать что ты умнее компилятора ?

Почитайте ветки товарища oxffff, и проникнитесь гордостью за то что человек таки умнее компилятора!!!! ;)



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

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

Наверх




Память: 0.49 MB
Время: 0.025 c
15-1185883532
AntifreezeeR
2007-07-31 16:05
2007.09.02
Ищу помощи, как новичок.


2-1186750317
alles
2007-08-10 16:51
2007.09.02
Функция DirectoryExists работает долго


15-1186067656
Kenifer
2007-08-02 19:14
2007.09.02
Как инжектирывать свой процесс в чужой процесс?


15-1186402849
oldman
2007-08-06 16:20
2007.09.02
Всех причастных с Днем Железнодорожника!!!


4-1173526703
BOGa
2007-03-10 14:38
2007.09.02
Обмен данными между процессами ( WM_COPYDATA)