Вниз
Скачать: CL | DM;

копирование без нагрузки на систему   Найти похожие ветки 

← →
LeNa19   (2003-09-15 23:33) [0]

Всем привет
поскажите наилучший вариант решения задачи.
я копирую фаил (700 mb)
привкденным кодом
var
buf array[0..102400]of byte;
...
...

while not eof(outfile)do
begin
blockread(outfile,buf,sizeof(buf),bytesread);
blockwrite(infile,buf,bytesread,byteswrite);
end;
closefile(infile);
closefile(outfile);

все ето работает в отдельном потоке
с приоритетом: tpidle.
но во время выполнения етого када
все дисковые опирацыи операционной системы
начинают жутко тормозить (не получается даже
посмотреть содержание какой либо папки)
может есть более разумный способ копирования
чтоб не грузить систему ?


← →
SPeller ©   (2003-09-16 01:29) [1]

Делай задержку после чтения и после записи блоков. SleepEx, например, подойдёт.


← →
AGGRESSOR ©   (2003-09-16 10:55) [2]

1) CopyFile;
2) SHFileOperation


← →
Карелин Артем ©   (2003-09-16 11:05) [3]

TFileStream


← →
LeNa19   (2003-09-16 20:29) [4]

TO AGGRESSOR ,Карелин Артем
ети методы копирования также тормозят
а SHFileOperation не даст скопировать кусок
файла но работает без тормозов


← →
panov ©   (2003-09-16 20:31) [5]

В отдельном потоке копируй с пониженным приоритетом.


← →
LeNa19   (2003-09-16 21:03) [6]

to panov
именно так я и делаю об етом сказано в вопросе !!!


← →
AGGRESSOR ©   (2003-09-17 11:44) [7]

Так ты хочешь скопировать КУСОК файла? Хм...
Попробуй проапгрейдить железо ;)


← →
Карелин Артем ©   (2003-09-17 13:03) [8]

DMA в настройках контроллера ЖД включено?


← →
Verg ©   (2003-09-17 13:15) [9]

1. Уменьшить размер буфера.
2. Вставить Sleep
3. Использовать overlapped IO.


← →
Verg ©   (2003-09-17 13:17) [10]

4. CopyFileEx


← →
Карелин Артем ©   (2003-09-18 14:51) [11]

Попрбовал сегодня в основном потоке - подтормаживает. Понизил приоритет - все пучком. Хотя комп по сегодняшним меркам не сильный. А если вставить Application.ProcessMessages в цикл записи/чтения, то и при нормальном приоритете идет на Ура.



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

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



Память: 0.47 MB
Время: 0.015 c
14-90062
Knight
2003-11-05 17:07
2003.11.27
Кто знает?


1-89912
Tornado
2003-11-18 13:18
2003.11.27
String -> Char


8-90000
Spawn
2003-08-03 10:15
2003.11.27
AVI


1-89973
_Андрей_
2003-11-17 16:13
2003.11.27
TTreeView


6-90046
Tron
2003-09-23 21:25
2003.11.27
Как для компонента WebBrowser зделать кнопку назад?




   Наверх