Главная страница
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.055 c
8-1164552655
Vovan#2
2006-11-26 17:50
2007.09.02
Звук и запись звука


9-1158666426
Nic
2006-09-19 15:47
2007.09.02
Нет диска к книге


4-1173028061
GrayFace
2007-03-04 20:07
2007.09.02
Access Violation в shell32.dll при вызове IFolderView.Items


2-1186654028
Балбес
2007-08-09 14:07
2007.09.02
Доступ к методам произвольных форм.


10-1136671723
Gear
2006-01-08 01:08
2007.09.02
функция в COM возвращает HRESULT, а дельфи создаёт procedure