Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
15-1186251555
Инс
2007-08-04 22:19
2007.09.02
Функция IsTrue


15-1186237904
исследователь
2007-08-04 18:31
2007.09.02
Есть ли среди Мастеров пользователи PlanetSky?


2-1185991030
Comp
2007-08-01 21:57
2007.09.02
Создать нечто подобное StringGrid на API


1-1182436068
DevilDevil
2007-06-21 18:27
2007.09.02
Excel. Exception: заполнение и выделение


2-1186260841
Wind
2007-08-05 00:54
2007.09.02
Как изменить цвет строки в DbGrig




   Наверх