Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.27;
Скачать: 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 вся ветка

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

Наверх




Память: 0.49 MB
Время: 0.016 c
3-89716
chtr
2003-11-10 10:23
2003.11.27
Как программно сжать базу mdb?


14-90130
Igor_thief
2003-10-31 18:00
2003.11.27
DLL


1-89850
azazello
2003-11-16 10:09
2003.11.27
Вопрос про версию программы и дату создания билда


1-89934
Filin
2003-11-18 08:41
2003.11.27
Анимированая форма


1-89903
limk
2003-11-14 17:28
2003.11.27
memo