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

Быстрая запись на винт   Найти похожие ветки 

← →
LAMA3OID   (2003-10-15 15:34) [0]

Нужно очень быстро записать большой файл на винт (несколько сот метров). Из извесных мне способов быстрее всего работает writeln :) (я пробовал 8 способов).
В факе на каком-то сайте я читал, что есть какой-то способ быстрой записи (было написанно про запись минуя оперативку или что-то в этом роде)
Может кто нибудь знает как это сделать ?


← →
Reindeer Moss Eater ©   (2003-10-15 15:43) [1]

было написанно про запись минуя оперативку или что-то в этом роде

А где находится ТО, что ты хочешь записать в файл "минуя оперативку" ?


← →
Wizard_Ex ©   (2003-10-15 16:07) [2]

Попробуй так, по крайней мере так быстрее чем сразу писать на диск, причем намного

MemoryStream := TMemoryStream.Create;
{чегото пишешь}
MemoryStream.Write...
{чегото пишешь}

FileStream := TFileStream.Create(AFileName, fmCreate);
FileStream.CopyFrom(MemoryStream, 0);
FileStream.Free;
MemoryStream.Free;


← →
Игорь Шевченко ©   (2003-10-15 16:54) [3]

Из известных способов быстрее всего работает команда copy


← →
Mystic ©   (2003-10-15 17:36) [4]

CreateFile с отключеной буферизацией...


← →
panov ©   (2003-10-15 18:11) [5]

Norton GHost


← →
Александр Спелицин ©   (2003-10-16 15:04) [6]

Если только для NT/2k/Xp, то через порты завершения ввода-вывода. Есть в примерах к MSDN.


← →
LAMA3OID   (2003-10-16 16:47) [7]

2 Mystic: Это как ?

2 Reindeer Moss Eater:
Да, я как-то не подумал, что в оперативке и находится...
Просто так было написанно...

2 Игорь Шевченко: Что за copy ?

2 panov: Что это за GHost ?

2 Wizard_Ex: Спасибо ! Попробую...


← →
dva ©   (2003-10-20 04:57) [8]

Нужно очень быстро записать большой файл на винт (несколько сот метров). Из извесных мне способов быстрее всего работает writeln :) (я пробовал 8 способов).

Неплохо было бы привести список из этих восьми способов, дабы не повторяться при ответах. Есть ли среди них способ, используемый в Excel и Access ? Команда copy тоже дает неплохие результаты - правильно тебе советуют.


← →
_Narayan_   (2003-10-21 15:28) [9]

у меня в книжке целая глава посвящена вопросу :
"Использование асинхронного ввода и вывода"

Есть примеры в электронном виде, но они на С++


← →
Wizard_Ex ©   (2003-10-21 16:27) [10]

to
> dva © (20.10.03 04:57) [8]


Интересно а что это за способ используемый в Excel и Access?


← →
icebeerg ©   (2003-10-21 18:47) [11]

procedure BlockWrite(var f: File; var Buf; Count: Integer [; var
AmtTransferred: Integer]) тоже пробовал?


← →
LAMA3OID   (2003-10-22 15:22) [12]

2 icebeerg: Пробовал.
2 dva: А как в эксэле и ацессе это делается ? И как при помощи
copy это сделать ?
2 _Narayan_: Давай хоть на "Си". Мыло - LAMA3OID@ukr.net



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

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



Память: 0.47 MB
Время: 0.011 c
3-86272
nstur
2003-12-03 11:51
2003.12.26
База данных DB


14-86560
Дмитрий_Б
2003-12-02 11:44
2003.12.26
Вопрос знатокам 1С.


14-86555
KILLER_ABV
2003-12-02 16:00
2003.12.26
Нужен HELP по Flash Macromedia


3-86280
Bless
2003-12-02 11:01
2003.12.26
Сработал ли post?


1-86432
I_Put
2003-12-13 18:06
2003.12.26
Функция в качестве формального параметра




   Наверх