![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Файлы отображенные в память [D7, XP]
Unknowing © (2006-07-20 10:02:00)Доброго времени суток!! Прошу помочь с сылками на информацию про сабж! Спасибо!
unknowing (2006-07-21 11:27:00) [1]
> Amoeba © (21.07.06 11:17) [20]
Спасибо огромное!! Щас посмотрю
Amoeba (2006-07-21 11:17:00) [2]
> unknowing © (20.07.06 12:15) [10]
>
> > Amoeba © (20.07.06 11:47) [9]
>
> Буду глубоко признателен!!! mail to: merkd@yandex.ru
Уже послано.
unknowing (2006-07-21 10:57:00) [3]
> Fay © (20.07.06 15:38) [18]
Ну, запись таблиц медленно. Это очевидно. Кол-во строк - 20000 выполняется ~5 sec на Pentium 3000 ГГц с RAM 1 ГГб и диском SATA.
Fay (2006-07-20 15:38:00) [4]2 unknowing © (20.07.06 15:17) [17]
> Понимать как: все и так сойдёт??
Да хрен его знает! Что именно происходит медленно? Как именно "медленно" (что, сколько, как долго)?
unknowing (2006-07-20 15:17:00) [5]
> Fay © (20.07.06 15:02) [16]
Понимать как: все и так сойдёт??
Fay (2006-07-20 15:02:00) [6]не вижу достойного места для сабжа
unknowing (2006-07-20 14:11:00) [7]while Counter<>NumberOfRecords do
begin
//-----------------------чтение данных-----------------------------//
BlockRead(File, file_data, SizeOf(file_data), NumRead);
//-----------------------------------------------------------------//
Writeln(mc_Table,
param1:7:1,
param2:8:1,
...
param20:7:3);
Writeln(rc_Table,
param1:7:1,
param2:8:1,
...
param20:7:3);
Writeln(fc_Table,
param1:7:1,
param2:8:1,
...
param20:7:3);
Writeln(gc_Table,
param1:7:1,
param2:8:1,
...
param20:7:3);
Inc(Counter);
end;
han_malign (2006-07-20 14:08:00) [8]
> Получается довольно медленно
- при последовательном чтении, FileMapping тебе ничем не поможет, даже может быть медленнее(если весь файл целиком не влезает, и приходится "двигать окно"(UnmapViewOfFile/MapViewOfFile)).
FileMapping - даст премущество, только в случае чтения и записипо произвольным(непоследовательным) смещениям в ограниченном участкефайла(ограниченном размером доступной нефрагментированной виртуальной памяти(см. MapViewOfFile)).
Fay (2006-07-20 14:04:00) [9]2 unknowing © (20.07.06 13:42) [12]
Где медленный код?
unknowing (2006-07-20 13:42:00) [10]
> Fay © (20.07.06 13:03) [11]
Забавно!! Я и пытаюсь узнать как это сделать!!!!!
Fay (2006-07-20 13:03:00) [11]2 unknowing © (20.07.06 12:15) [10]
> Получается довольно медленно
Сделайте быстро.
unknowing (2006-07-20 12:15:00) [12]
> Amoeba © (20.07.06 11:47) [9]
Буду глубоко признателен!!! mail to: merkd@yandex.ru
> Fay © (20.07.06 11:36) [8]
Конкретная моя задача: считываю нетипизированный файл (BlockRead) и записываю на его основе 4 текстовых таблицы 20х20000 посредством WrtiteLn(file, param1:8, param2...). Получается довольно медленно :( Известно, что отображением было бы быстрее, а как не известно. Вот!
Amoeba (2006-07-20 11:47:00) [13]
> unknowing © (20.07.06 11:22) [7]
>
> > IceBeerg © (20.07.06 11:19) [6]
>
> Есть с этим проблемы (ограничено время нахождения в сети)!
> Да и, может, у мастеров наработки есть
Если интересно, по могу, но только завтра (нужно взять из дома) выслать один компонентик (не моей разработки), инкапсулирующий работу с отображаемыми в память файлами.
Fay (2006-07-20 11:36:00) [14]unknowing © (20.07.06 11:22) [7]
Какие ещё наработки нафинг?
unknowing (2006-07-20 11:22:00) [15]
> IceBeerg © (20.07.06 11:19) [6]
Есть с этим проблемы (ограничено время нахождения в сети)! Да и, может, у мастеров наработки есть
IceBeerg (2006-07-20 11:19:00) [16]А www.yandex.ru и CreateFileMapping набрать...
unknowing (2006-07-20 11:11:00) [17]
> Amoeba © (20.07.06 10:39) [2]
Спасибо, общие знания есть. Хотелось бы конкретные примеры работы на Delphi(в частности, как данные из файла считывать в записи...)
> Amoeba © (20.07.06 10:39) [2]
> Fay © (20.07.06 11:00) [3]
Спасибо, модуль гляну
Amoeba (2006-07-20 11:03:00) [18]
> Fay © (20.07.06 11:00) [3]
> Модуль так себе. Фигня.
Вполне возможно. Я его не скачивал и код соответственно не смотрел.
Fay (2006-07-20 11:00:00) [19]Модуль так себе. Фигня.
Amoeba (2006-07-20 10:39:00) [20]В кладовке есть модуль для работы с такими файлами (mappingfile.zip):
http://kladovka.net.ru/index.cgi?pid=dir&rid=8&ppn=2